隔离存储文件流的问题
本文关键字:问题 存储文件 隔离 | 更新日期: 2023-09-27 18:32:26
每当我运行这段代码时:
IsolatedStorageFile fileStorage = IsolatedStorageFile.GetUserStoreForApplication();
StreamWriter Writer = new StreamWriter(new IsolatedStorageFileStream("TestFile.txt", FileMode.OpenOrCreate, fileStorage));
Writer.WriteLine(email1.Text + "," + email2.Text + "," + email3.Text + "," + email4.Text);
Writer.Close();
我收到此错误:
An exception of type 'System.IO.IsolatedStorage.IsolatedStorageException' occurred in mscorlib.ni.dll but was not handled in user code
我正在使用模拟器,但这应该不是问题。 我已经包括了这条线
Using System.IO.IsolatedStorage;
使用隔离存储时遇到的问题就是
System.IO.IsolatedStorage.IsolatedStorageException
这是因为您在使用存储后实际上并没有关闭它。这也将在安全性方面引发例外。将代码重写为:
using (var storage = IsolatedStorageFile.GetUserStoreForApplication())
{
using (var file = storage.OpenFile("TestFile.txt", System.IO.FileMode.OpenOrCreate))
{
using (System.IO.StreamWriter writer = new System.IO.StreamWriter())
{
writer.WriteLine(email1.Text + "," + email2.Text + "," + email3.Text + "," + email4.Text);
}
}
}
实际使用的作用是使用将调用dispose方法,使其可重用。 存储,文件流,流编写器具有处置方法,这些方法实际上有利于使用"使用"。这通常不会引发维护资源的异常,但有关文件名的参数异常仍然会产生问题。
尝试。。。在处理文件和输入时必须始终使用 catch。
编辑代码如何阅读:
string dataToRead = string.Empty;
using (var storage = IsolatedStorageFile.GetUserStoreForApplication())
{
using (var file = storage.OpenFile("TestFile.txt", System.IO.FileMode.Open))
{
using (var reader = new System.IO.StreamReader(file))
{
dataToRead = reader.ReadToEnd();
}
}
}