Sasa Ierakstīts Janvāris 2, 2009 Share Ierakstīts Janvāris 2, 2009 Viss jātaisa ar Javascript. Kā prātīgāk būtu taisīt, ja ir jāizveido 'Comma-separated' fails kur katra vērtība attdalīta ar komatiem, lai nevajadzētu virknēt virkni ar vertībāk un tad vēl tās atdalīt ar komatiem. Domaju, ka varētu mēģināt sataisīt masīvu, kur varētu salikt vērtības un, tad rakstīt failā. Tā varētu aizvairīties no kļūdām. Link to comment Share on other sites More sharing options...
bubu Janvāris 2, 2009 Share Janvāris 2, 2009 Kā vispār javaskriptā var izveidot failu? Ja vajag vienkārši izveidot stringu csv formātā, tad vienkārši: var s = []; for (var i=0; i<ierakstu_skaits; i++) { s.push([elem1, elem2, elem3, ...].join(",")); } s = s.join("\n"); alert(s); Link to comment Share on other sites More sharing options...
binary Janvāris 2, 2009 Share Janvāris 2, 2009 Kā vispār javaskriptā var izveidot failu? Cookie - vienīgais, kas nāk prātā bet gan jau nav tas, kas autoram vajadzīgs Link to comment Share on other sites More sharing options...
Wiper Janvāris 2, 2009 Share Janvāris 2, 2009 Hmm, varbuut autors domaaja jscript ? Link to comment Share on other sites More sharing options...
Sasa Janvāris 7, 2009 Author Share Janvāris 7, 2009 (labots) Šitā lieta strādās tikai uz IE. Izmantošu ActiveXObject, lai lokāli izveidotu kādu failu. Un par failu runājot, ir tā ka masiva vienā rindiņā var būt ~76 elementi, un tādu rindiņu neierobežoti daudz. Bet ne katrā elementā ir sava vērtība daži elementi paliek tukši. Tāpēc kā var sataisīt tā ka es varu norādīt kādu vērtību un kādā elementā pēc kārtas rakstīt (vai 1 vai 2 vai 76)? šādi man būs rindas un rindās būs elementi, tad es rindu elementiem piešķiršu vērtībās, tad tās pierms likšanas failā sadžonošu un gatavs. Nebūs jāvirknē nemērā garš stings un jāskaita komats pa komatam, lai ārliecinātos ka esmu pareizā vietā ielicis kādu vērtību. Šādi izskatās ka ir gana labs variants? <html> <head> <title>Array</title> <script> var a = new Array(); for (var i = 0; i < 5; i++) { a[i] = new Array(); for (var j = 0; j < 76; j++) { a[i][0] = "viens"; a[i][1] = "divi"; a[i][2] = "tris"; a[i][3] = "cetri"; a[i][4] = "pieci"; a[i][5] = "sesi"; a[i][6] = "septini"; a[i][7] = "astoni"; a[i][8] = "devini"; a[i][9] = "desmit"; a[i][10] = "vienpadsmit"; a[i][11] = "divpadsmit"; a[i][12] = "trispadsmit"; a[i][13] = "ceturpadsmit"; a[i][14] = "piedpadsmit"; } } var fso = new ActiveXObject("Scripting.FileSystemObject"); var s = fso.CreateTextFile("C:\\Test.txt", true); for (var i = 0; i < 5; i++) { document.write('<br>'); //s.WriteLine('\n'); for (var j = 0; j < 76; j++) { document.write(a[i][j]+','); var string = a[i][0]+','+a[i][1]+','+a[i][2]+','+a[i][3]+','+a[i][4]+','+a[i][5]+','+a[i][6]+','+a[i][7]+','+a[i][8]+','+a[i][9]+','+a[i][10]+','; s.WriteLine(string); } } s.Close(); </script> </head> <body> </body> </html> Kā izveidot lai man masīvs sāktos ar [1] ... tā lai nebūtu [0], kas savukārt ir kā pirmais. Man vajag lai masīva pirmais elements ir arī dzīvē pirmais elements. tagad sanāk ka ir tā ja es atstāju(vispār neko nenorādu) nulltajam masīva elementam un tad sāku visu definēt no [1]. tad rezultāts ir tāds: ,1,2,3 ... Labots Janvāris 2, 2009 - Sasa Link to comment Share on other sites More sharing options...
bubu Janvāris 7, 2009 Share Janvāris 7, 2009 (labots) Tu laikam joprojām nemācies no tā, ko tev dažas dienas atpakaļ uzraksta... Nu kāpēc tu tur to stringu taisi ar garo + .. + .. + penteri? var string = a[i].join(",") + ","; (nezinu gan kāpēc tev beigās vajag lieku komatu. Tāpēc kā var sataisīt tā ka es varu norādīt kādu vērtību un kādā elementā pēc kārtas rakstīt (vai 1 vai 2 vai 76)? Kā tas ir kā? Nu vienkārši uztaisi masīvu vajadzīgajā garumā un raksti tikai vajadzīgos elementus: var arr = new Array(76); arr[9] = "desmitais elements"; arr[55] = "piecdesmit sestais elements"; Kā izveidot lai man masīvs sāktos ar [1] ... tā lai nebūtu [0], kas savukārt ir kā pirmais. Man vajag lai masīva pirmais elements ir arī dzīvē pirmais elements. Kas tev liedz vienkārši rakstīt masīvā pēc 0 bāzēta indeksa? T.i: arr[i] = ".."; vietā rakstīt arr[i-1] = ".."; arr[10] = ".."; vietā rakstīt arr[9] = ".."; utt.. Labots Janvāris 7, 2009 - bubu Link to comment Share on other sites More sharing options...
Recommended Posts
Izveido kontu, vai pieraksties esošajā, lai komentētu
Jums ir jābūt šī foruma biedram, lai varētu komentēt tēmas
Izveidot jaunu kontu
Piereģistrējies un izveido jaunu kontu, tas būs viegli!
Reģistrēt jaunu kontuPierakstīties
Jums jau ir konts? Pierakstieties tajā šeit!
Pierakstīties tagad!