Streamwriter抛出system.argumentexception

时间:2013-01-10 06:35:11

标签: c# streamwriter

我知道这个问题似乎很奇怪。

我使用.NET Micro Framework在C#中编写一个小程序,使用默认模拟器在模拟器上使用5个按钮模拟闪光灯,使用interruptport来引发事件。

我进行了编码,以便当我按下底部按钮时,存储在arraylist usagelog中的所有记录都将打印到txt文件中。非常简单明了,我做了一个Streamwriter实例

StreamWriter sw = new StreamWriter(@"c:\temp.txt");

但是它会抛出“System.IO.dll中出现类型'System.ArgumentException'的未处理异常。”此行。

我无法解决这个问题,我无法理解为什么这里存在争论异常。该代码适用于Visual C#中的控制台项目,但它不适用于Micro Framework。

1 个答案:

答案 0 :(得分:1)

您遇到的问题是因为Windows和MicroFramework之间的文件系统不同。通过使用一些目录函数来确定可用的directorys,我能够让它在模拟器上运行。

public static void Main()
{
    string  d = Directory.GetCurrentDirectory();
    string[] directorys = Directory.GetDirectories(d);
    foreach (var item in directorys )
    {
        Debug.Print(item);
    }

    try
    {
        using (StreamWriter sw = new StreamWriter("\\WINFS\\temp.txt"))
        {
            sw.WriteLine("Good Evening");
            sw.Close();
        }
    }
    catch (Exception ex)
    {
        throw ex;
    }

}

在模拟器中,我想出了

 [0]: "\\ROOT"
 [1]: "\\WINFS"

ROOT无效,WINFS无效。