SORU
30 EYLÜL 2009, ÇARŞAMBA


C#: çok satırlı dize satırları arasında Döngü

Çok daha fazla bellek kullanmadan bir çok satırlı dize (bir dizi bölmek olmadan örneğin) her satırı döngü için iyi bir yolu nedir?

CEVAP
30 EYLÜL 2009, ÇARŞAMBA


Öneririm kullanarak bir arada StringReader LineReader sınıf, hangi parçası MiscUtil aynı zamanda mevcut this StackOverflow answer - kolayca kopyalama sadece o sınıfa kendi programı projesi. Bu şekilde kullanmak istiyorum:

string text = @"First line
second line
third line";

foreach (string line in new LineReader(() => new StringReader(text)))
{
    Console.WriteLine(line);
}

Döngü içinde tüm satırları bir ceset dize veri (ister böyle bir dosya ya da her neyse) çok sık görülen bu olmamalı gerekli telefon kodu için test etmek için boş vs :) bunu söyledikten sonra, eğeryapınel ile bir döngü yapmak istiyorum, bu ben genellikle Fredrik tercih edecekleri şeklinde

using (StringReader reader = new StringReader(input))
{
    string line;
    while ((line = reader.ReadLine()) != null)
    {
        // Do something with the line
    }
}

Bu sayede sadece test için hiçlik, bir kez ve gerek yok sanırım hakkında bir do/while döngü ya da (ki nedense hep alır bana daha fazla çaba okumak için daha düz bir süre döngü).

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • boogie2988

    boogie2988

    6 NİSAN 2006
  • Caramella Girls

    Caramella Gi

    19 Mayıs 2008
  • SavageLuxxxGaming - Daily NBA 2K15 & NBA Live 15 Enjoy And Subscribe!

    SavageLuxxxG

    11 Ocak 2013