我提到了一些类似的问题,但没有一个涉及IO
.
当我使用时,我在java中使用了相同的代码Eclipse
。那次就成功了。
但现在我尝试在中使用这段代码Mono for Android
(C#),它不起作用。
我正在尝试运行此代码来创建一个InputStream
:
InputStream myInput =ctx.Assets.Open(DATABASE_NAME + ".db");
但它给了我编译时错误:Cannot implicitly convert type 'System.IO.Stream' to 'Java.IO.InputStream'
有一个直接功能可以将文件从资产复制到设备内存,但这需要源路径和目标路径。
如何获取源路径???
因为我绝对是初学者Mono for Android
, 任何帮助表示赞赏。
Mono for Android 将一些 Java 构造转换为“等效”.NET 构造,以简化类 .NET 平台之间的代码共享。作为其中的一部分,java.io.InputStream
and java.io.OutputStream
被映射到System.IO.Stream
,因此编译器错误。
是否存在您需要的任何东西InputStream
不存在于System.IO.Stream
?
有一个直接功能可以将文件从资产复制到设备内存,但这需要源路径和目标路径。
我不知道什么InputStream
你在这里提到的方法。您可以使用Stream.CopyTo(Stream)
要做到这一点:
Stream asset = context.Assets.Open(DATABASE_NAME + ".db");
string dbPath = System.IO.Path.Combine(
System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal),
"YourFile.xml");
using (var dest = System.IO.File.OpenWrite(destPath))
asset.CopyTo(dest);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)