你能让我怀疑一下吗?
我有一个嵌入式资源文本文件,当我试图使用一个streamWriter在它上写时,我会得到这样的错误:“抛出了一个System.ArgumentException。无法写入流。”
这是代码:
var assembly = Assembly.GetExecutingAssembly();
var resourceName = "SuperMimo2.Products.txt";
using (Stream stream = assembly.GetManifestResourceStream(resourceName))
using (StreamWriter writer = new StreamWriter(stream))
{
writer.WriteLine(txtLines.Text);
}你能告诉我我能做什么吗?
谢谢大家的关注!
发布于 2015-04-01 15:58:54
Android和iOS包/包都是签名的,不能写。若要写入文件,必须使用操作系统提供的适当的文件系统文件夹之一。
有关iOS,请参阅本指南:
system/
对于Android,你可以
var path = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
var filename = Path.Combine(path, my_file_name);如果您想在应用程序中包含一个文件并写入它,那么首先需要将它作为一个资产包含在您的应用程序包中。然后,您需要将其复制到可写文件夹中,以便对其进行任何更改。
// read the data from the Asset
using (StreamReader sr = new StreamReader (Assets.Open ("read_asset.txt")))
{
content = sr.ReadToEnd ();
}
// get a writable file path
var path = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData);
var filename = Path.Combine(path, "write_asset.txt");
// write the data to the writable path - now you can read and write it
File.WriteAllText(filename, content);https://stackoverflow.com/questions/29395367
复制相似问题