2009-02-26 18 views
1

kullanarak dosyadan okuma için iki boyutlu dizi yazma C++ 'da yeni yaşıyorum 680x680 iki boyutlu dizi oluşturdum.Ve ben txt dosyasına yazmayı denedim.Ne yazık ki, ben Boyutları boyunca düzenli olarak iki boyutlu dizi yazar. Ayrıca txt dosyasından iki boyutlu dizi okumak istiyorum. Benim kodum aşağıda. Bana yardım edebilir misin? sözcükleri "seri" ve "seri kaldırma" seçeneğini kullanarakIki boyutlu dizi dosya ve Visual C++

/*Declaration 680 *680 multidimensional array*/ 
array< array<double>^ >^ arr = gcnew array< array<double>^ >(680); 

for (j=0;j<arr->Length;j++){ 
    arr[j]=gcnew array<double>(680);} 

/*Write double array to file*/ 

FILE *OutFile = fopen("C:\\test.txt","w++"); 

for(n=0;n<=(N-1);n++){ 
    fprintf(OutFile,"\n "); 
    for(k=0;k<=(N-1);k++){ 
     fprintf(OutFile,"\t %f ",dizi[n][k]);}} 

fclose(OutFile); 

/* Declaration array reading from file*/ 

array< array<double>^ >^ read = gcnew array< array<double>^ >(680); 

for (j=0;j<read->Length;j++){ 
    read[j]=gcnew array<double>(680);} 

/* reading array from file*/ 

FILE *InFile = fopen("C:\\test.txt","r"); 
double db; 
for(n=0;n<=(N-1);n++){ 
    for(k=0;k<=(N-1);k++){ 
    fscanf(InFile,"\t %f ",&db); 
    read[n][k]=db; }} 
fclose(InFile); 

Saygılarımızla ...

cevap

0

şu anda ayrıntılı olarak Bu işi yoluna koymak zaman yok, sen etrafına bir göz sahip olabilir (SO google ya).


Sonra: Görsel-şey yapmıyorum, bu yüzden sözdizimi ilgili bir şey görmezden geleceğim.

  1. Derleme mi?
  2. Eğer öyleyse, çarpmadan çalışır mı?
  3. Eğer öyleyse, çıktıya doğrudan baktınız mı? Beklediğiniz şeyi veriyor mu?
  4. Girdi ayrıştırma için fscanf kullanımı zor. Beyaz boşluk karakterlerini eşleştirmeniz için çok dikkatli olmanız gerekir. Look here. En büyük sorun, yeni satırlar yazıyor olmanız, ancak girdilerin bunları içermesine izin vermemenizdir.

Benim tavsiyem: her adımda neler olduğunu kontrol edin ve (soruyu düzenlemek) geri rapor, yavaş gitmek daha iyi bir fikrin varsa ...

Yanlışlıklara