【发布时间】:2013-09-19 01:43:03
【问题描述】:
在 Xamarin iOS 应用程序中,我需要随应用程序提供示例文本文件。当我运行单元测试以验证读取时,我收到找不到文件的错误。我尝试了多个位置来放置文件并将操作设置为嵌入式资源和内容,并且在所有情况下我都会收到未找到的错误。
首先应该将嵌入到应用程序中的文件放置在何处以包含在内。二、如何访问文件,什么路径?
【问题讨论】:
标签: iphone ios xamarin.ios xamarin
在 Xamarin iOS 应用程序中,我需要随应用程序提供示例文本文件。当我运行单元测试以验证读取时,我收到找不到文件的错误。我尝试了多个位置来放置文件并将操作设置为嵌入式资源和内容,并且在所有情况下我都会收到未找到的错误。
首先应该将嵌入到应用程序中的文件放置在何处以包含在内。二、如何访问文件,什么路径?
【问题讨论】:
标签: iphone ios xamarin.ios xamarin
我可能会选择嵌入式资源,但是您需要以不同的方式访问它。更多信息在这里:
https://developer.xamarin.com/guides/xamarin-forms/working-with/files/
基本上你需要使用反射来获取Assembly,然后用正确的ID调用它的GetManifestResourceStream方法。
【讨论】:
您应该能够将文件放在项目的根目录或任何子文件夹中。请务必将文件标记为“内容”。要读取它,只需使用任何 C# 文件 IO 操作,例如:
string text = System.IO.File.ReadAllText("test.txt");
or
string text = System.IO.File.ReadAllText("path/test.txt");
路径将相对于您的应用程序包的根目录,因此您不需要使用绝对路径。
请注意:确保路径和文件名的大小写正确。在模拟器中这无关紧要,因为 OS X 文件系统通常不区分大小写。但是iOS是区分大小写的,所以在设备上运行时,大小写错误会导致异常。
【讨论】: