2011-05-30 84 views
15

我試圖反序列化一個XML文件。在捆綁反序列化之前,我需要檢查XML文件流是否爲空。檢查流是否爲空

IsolatedStorageFileStream isfs1 = new IsolatedStorageFileStream("test.xml", 
    FileMode.Open, FileAccess.Read, isf); 

// Deserialize the XML to an object 
Settings s = new Settings(); 
SoapFormatter SF= new SoapFormatter(); 
s = (Settings) SF.Deserialize(isfs1); 

如何檢查isfs1是否爲空?

回答

23

檢查流的屬性Length

長度代表當前在文件中的字節數。

如果它是0,則該文件爲空。

+0

Length屬性非常好。謝謝:D – Erik 2011-05-30 19:19:14

3

如果你的文件是UTF-8格式,它的大小至少爲3,因爲BOM(字節順序標記)。因此,即使文件爲空,檢查長度> 0也會返回true。