2016-11-23 1 views
-1

I Textdatei in C# .net am Ende einer Zeile vollständig null ist, aber in foreach C# lese nicht Null-String erfassen kann, so dass es Fehler Wie kann man überprüfen, ob Zeichenfolge in C# .net null ist

string[] lines = System.IO.File.ReadAllLines(dir); 
List<KeyValuePair<int, DateTime>> items = new List<KeyValuePair<int, DateTime>>(); 
List<KeyValuePair<int, DateTime>> lst = new List<KeyValuePair<int, DateTime>>(); 
foreach (string line in lines) 
{ 
    if (line!=string.Empty) 
    { 
     l = line.Split('\t'); 
     l[0] = l[0].Trim(); 
     PersianCalendar persCal = new PersianCalendar(); 
     SqlConnection sqlconn = new SqlConnection(DBsetting.Connstring); 
     SqlCommand sqlda = new SqlCommand("InsertReadd", sqlconn); 
     sqlda.CommandType = CommandType.StoredProcedure; 
     sqlda.Parameters.AddWithValue("@date", l[1]); 
     sqlda.Parameters.AddWithValue("@IDp", l[0]); 
     sqlda.Parameters.AddWithValue("@day", GetDayOfWeek(GetPerDate(l[1]))); 
     sqlda.Parameters.AddWithValue("@nobatkari", ""); 
     sqlda.Connection.Open(); 
     sqlda.ExecuteNonQuery(); 
     sqlda.Connection.Close(); 
    } 
} 
RefGrid(); 
bekommt
+1

suchen Sie nach 'String.IsNullOrEmpty' –

+0

Sie sollten angeben, welchen Fehler Sie tatsächlich erhalten. – Sayse

+0

'string.IsNullOrWhiteSpace' ist eine gute Wahl –

Antwort

0

CHECK

Änderung:

if (line!=string.Empty) 

zu:

//check if the sting = null or empty 
    if (!String.IsNullOrEmpty(line)) 
    { 
    //some code 
    } 
1
if(!String.IsNullOrEmpty(line)) 

tun genau dies und es funktioniert

Es ist für Null überprüft und Leer. Dies ist überall für diese Funktionalität in C# verwendet.

BEARBEITEN: Sie können Folgendes zum Überprüfen von Zeichenfolgen verwenden, die Leerzeichen enthalten.

if(!String.IsNullOrWhiteSpace(line)) 
+0

Ich teste es. Es funktioniert nicht – javad

+0

@javad bitte zeigen Sie den Fehler erhalten Sie –

+0

Ich bekomme keinen Fehler, aber wenn Zeile leer ist, geht es von if Klausel – javad

Verwandte Themen