Şimdi Ara

C de txt dosyadan veri okuma

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
18
Cevap
1
Favori
3.279
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Merhaba,
    Sözlük programı yapmak için txt uzantısındaki karışık kelimeleri programa almam gerek. Fakat şöyle bir sorun var birden fazla kelimeli. Bunları ingilizce türkçe olarak ayrı ayrı nasıl alabilirim ?

    Txt nin bir kısmı ;


     C de txt dosyadan veri okuma



  • Eğer bu txt'yi düzenleme şansın var ise aralarına "-" yada ":" yada "|" gibi bir işaret koyup ona göre okuduğun her satırda ayrıştırırsın.

    < Bu ileti tablet sürüm kullanılarak atıldı >
  • -w K- - kullanıcısına yanıt
    Maalesef hocam. 5781 satır var :/
  • Eğer hepsinin arasında bu şekilde birden fazla boşluk varsa onu kullanarak ayırabilirsin. Önce fgets ile satırı komple al, sonra satırda çift boşluk karakteri ara. Bulduğun zaman sol taraftaki bölge ingilizce, sağ taraftaki türkçe anlamı olur.
  • seyfi84 S kullanıcısına yanıt
    Çok teşekkür ederim hocam
  • Merhaba. Benim de bu konu ile ilgili bir sıkıntım var, hazır konu açılmışken buradan sorayım. Şu şekilde devam eden bir txt dosyam var:

    0 22847
    0 420315
    3 316637
    3 16516
    3 5535878
    .
    .
    .

    Burada mesela 0 ile başlayan satırları bir combobox'a, 3 ile başlayanları ise diğer combobox'a atmak istiyorum, ama combobox'larda 0 ve 3 sayıları görünmeyecek. Nasıl bir yol izlemeliyim?

    Teşekkür ederim.

    Düzeltme: Yalnız benimki c# için, başlıkta c yazıyormuş şimdi gördüm.



    < Bu mesaj bu kişi tarafından değiştirildi çemçük -- 13 Mayıs 2015; 21:39:23 >
  • quote:

    Orijinalden alıntı: çemçük

    Merhaba. Benim de bu konu ile ilgili bir sıkıntım var, hazır konu açılmışken buradan sorayım. Şu şekilde devam eden bir txt dosyam var:

    0 22847
    0 420315
    3 316637
    3 16516
    3 5535878
    .
    .
    .

    Burada mesela 0 ile başlayan satırları bir combobox'a, 3 ile başlayanları ise diğer combobox'a atmak istiyorum, ama combobox'larda 0 ve 3 sayıları görünmeyecek. Nasıl bir yol izlemeliyim?

    Teşekkür ederim.

    Düzeltme: Yalnız benimki c# için, başlıkta c yazıyormuş şimdi gördüm.



     

    FILE *oku;


    oku = fopen("data.txt","r");

    while(fscanf(oku,"%d %d",&ilkDeger,&sonrakiDeger) != EOF )
    {
    if(ilkDeger == 3)
    //sunu yap
    else if(ilk Deger == 1)
    //sunu yap
    }




  • Merhaba elimde sehir1-sehir2-mesafe formatında bir txt dosyası var. Bu txt dosyasından sehir1 ile sehir2 yi bir matrise mesafeyi de bir diziye almak istiyorum nasıl yapabilirim.

    sehir1-sehir2-mesafe
    sehir1-sehir3-mesafe
    sehir1-sehir4-mesafe
    ...

    diye gidiyor



    < Bu mesaj bu kişi tarafından değiştirildi Guest-F31FE8CB4 -- 8 Mart 2017; 14:51:17 >
  • merhaba buna çok benzer bir ödevim var. Yardımınızı bekliyorum.
  • quote:

    Orijinalden alıntı: xhestia

    merhaba buna çok benzer bir ödevim var. Yardımınızı bekliyorum.
    Nasıl ayrılacak text detaylı soyler misin

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • x y z koordinatları float ve renk bilgisi int olarak verilmiş. Koordinatları matrise atıp sayısal işlem yapmam gerekiyor. Ayrıca dosyanın başlığında nokta sayısı verilmiş ve bunu da kontrol etmem lazım. Ancak bunları nasıl ayırıcam?
  • quote:

    Orijinalden alıntı: xhestia

    x y z koordinatları float ve renk bilgisi int olarak verilmiş. Koordinatları matrise atıp sayısal işlem yapmam gerekiyor. Ayrıca dosyanın başlığında nokta sayısı verilmiş ve bunu da kontrol etmem lazım. Ancak bunları nasıl ayırıcam?
    https://stackoverflow.com/questions/7151922/reading-a-txt-text-file-in-c-containing-float-separated-by-space

    Linkteki ilk cevapta float okuma örneği verilmiş.

    Döngü dönerken 'fscanf(myfile,"%lf",&myvariable);' komutu her çalıştırıldığı zaman dosyadan sırayla bir float okuyor. Bu komut her çalıştığında bir sonraki floatı alır yani her çalıştığında aynı floatı almaz.

    Dosyadan float okuma işlemi yapılmış ve ekrana print komutuyla basılmış. print komutunun olduğu yerde sen matrise atma işlemini yapabilirsin.




  • Çok teşekkür ederim çok yararlı oldu. Bir sorum olursa size mesaj atabilir miyim?
  • quote:

    Orijinalden alıntı: xhestia

    Çok teşekkür ederim çok yararlı oldu. Bir sorum olursa size mesaj atabilir miyim?
    Rica ederim, atabilirsin

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • Merhaba. Sayenizde projenin yarısını bitirdik. Dosyada bize veriler noktaları okutup bir matrise atadık. Birbirine en yakın ve en uzak noktayı bulmamız gerekiyor. Biz de böyle bir kod yazdık, kod çalışıyor ancak 4-5 satir sonra duruyor. Verilen noktaların fazlalığından mı yoksa kodumuz mu yanlış anlayamadık. Dosyada 84.579 nokta var. Dönüşünüzü bekliyorum.
    rewind(dosya);
    for(i=0; i<satir-4 ; i++)
    {
    for(j=i+1; j<satir-4; j++)
    {
    kare=pow((matris[0]-matris[j][0]),2)+pow((matris[1]-matris[j][1]),2)+pow((matris[2]-matris[j][2]),2);
    karekok=sqrt(kare);
    uzaklik[j]=karekok;
    printf("%lf \t",uzaklik[j]);
    }
    printf("\n");
    }
  • xhestia X kullanıcısına yanıt
    ide'deki konsolda çıkan hata mesajının ss sini atarsan anlayabiliriz hatayı muhtemelen nullpointer falandır



    < Bu mesaj bu kişi tarafından değiştirildi Guest-F31FE8CB4 -- 17 Ekim 2019; 19:1:22 >
  •  C de txt dosyadan veri okuma
    Bunu gösterip hemen kapanıyor altta da bir hata yazmıyor.
  • xhestia X kullanıcısına yanıt
    Bir de bizim klasörden dosyaları okuyup .nkt uzantılı olanları kontrol etmemiz gerekiyor ancak şöyle bir kod yazdık dosyaların isimlerini alıyor ama açamıyor. fopen(buraya dizi atmamız gerek, "r")
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.