unity android 判断streamingasset 里有没有文件
发布网友
发布时间:2022-04-22 23:37
我来回答
共1个回答
热心网友
时间:2022-05-02 22:34
用Android接口来读取streamingAsset目录 可以提高效率,www方式效率不好 还耗内存。读取byte后直接CreateFromMemory 来创建bundle。其他模式还是CreateFromFile来创建效率更好,memory的方式耗内存,所以大文件还是要拷出来放在file目录 用 CreateFromFile来创建,iOS上全部用CreateFromFile。
public byte[] getFromAssetss(String fileName){ //android里边读取streamingAsset目录的文件
try {
//得到资源中的Raw数据流
InputStream in = getResources().getAssets().open(fileName);
//得到数据的大小
int length = in.available();
byte [] buffer = new byte[length];
//读取数据
in.read(buffer);
//依test.txt的编码类型选择合适的编码,如果不调整会乱码
// res = EncodingUtils.getString(buffer, "BIG5");
//关闭
in.close();
return buffer;
}
catch (Exception e)
{
e.printStackTrace();
return null;
}
}
关于文件读取速度 1 最快的是File目录下的File.readallbytes 其次用上边的接口读取StreamingAssets 目录 最后是WWW方式异步读取StreamingAssets 目录。