如何使用c#避免在windows mobile 6.5设备中写入零大小文件到存储卡

本文关键字:小文 存储卡 文件 何使用 windows mobile | 更新日期: 2023-09-27 17:53:59

我正在使用c#在windows mobile 6.5上使用。net CF 3.5开发一个智能设备应用程序。用户将使用该应用程序将XML文件写入存储卡,每天大约有5000个XML文件写入存储卡。但是有一个问题我找不到根本原因,那就是有时写的文件是零大小的,也无法打开这些零大小的文件。

using (StreamWriter sw = System.IO.File.CreateText(@"'Storage Card'temp'filename01.xml"))
{
     xmldocData.Save(sw);
     sw.Flush();
     sw.Close();
}
如果有人能帮忙,我会很感激的。

如何使用c#避免在windows mobile 6.5设备中写入零大小文件到存储卡

是否有可能您正在尝试写的一些数据是空的?

using (StreamWriter sw = System.IO.File.CreateText(@"'Storage Card'temp'filename01.xml"))
{
    if ( sw.BaseStream.Length > 0)
    {
       xmldocData.Save(sw);
    }
    sw.Flush();
    sw.Close();
}

这有点难说,你能在你保存的数据周围显示更多的代码吗?

可能是SD卡或驱动程序有问题。

请检查SD卡。使用其他厂商的不同卡进行测试。

不要在SD卡上保存和更改太多内容,它们不是作为硬盘设计的。参见磨平等。大多数消费卡都是为日常使用设计的,而不是为工业用途设计的。

有更好的工业用SD卡,例如ATP,具有更好的磨损平衡等,允许您更频繁地更改"内存"字节。

查看您的设备供应商,并要求新的存储卡驱动程序或设备固件或他们推荐的SD卡。