关于大文件读取的一些问题
[mw_shl_code=csharp,true]
FileOpenPicker fileOpenPicker = new FileOpenPicker();
fileOpenPicker.SuggestedStartLocation = PickerLocationId.Downloads;
fileOpenPicker.ViewMode = PickerViewMode.List;
fileOpenPicker.FileTypeFilter.Add(".exe");
fileOpenPicker.FileTypeFilter.Add(".zip");
fileOpenPicker.FileTypeFilter.Add(".jpg");
fileOpenPicker.FileTypeFilter.Add(".iso");
fileOpenPicker.FileTypeFilter.Add(".mp3");
fileOpenPicker.FileTypeFilter.Add(".wav");
fileOpenPicker.FileTypeFilter.Add(".mp4");
fileOpenPicker.FileTypeFilter.Add(".txt");
...
StorageFile file = await fileOpenPicker.PickSingleFileAsync();
if (file == null)
return;
var buffer = await FileIO.ReadBufferAsync(file);
[/mw_shl_code]
读取文件不能超过1G,超过了就报异常(System.OutOfMemoryException),请问这种时候要怎么样才能读取超过1G的文件呢?
补充内容 (2016-3-22 17:23):
楼主已经解决了这个问题了
具体什么什么时候解决的,大概是几个月前吧
下面是成品 :
FIleHashCheck:
https://www.microsoft.com/zh-cn/store/apps/filehashcheck/9nblggh5ff52
为防止不可控的内容风险,本站已关闭新用户注册,新贴的发表及评论;
你现在看到的内容只是互联网用户曾经发表的言论快照,仅用于老用户留存纪念,且仅与科技行业相关,全部内容不代表本站观点及立场;
本站重新开放前已针对包括用户隐私、版权保护、信息安全、国家政策在内的各种互联网法律法规要求,执行了隐患内容的自查、屏蔽和删除;
本站目前所属个人主体,未有任何盈利安排与计划,且与原WFUN.COM所属公司不存在任何关联关系;
如果本帖内容或者相关资源侵犯到您的合法权益,或者您认为存在问题,那么请您务必点此举报或投诉!
Quote***链接停止解析***
分段读取呗,你这样就是一次性把文件放到内存里。直接占用了1G的RAM了。
怎么做才能分段读取啊?第一次用FileIO接收数据感觉跟Stream很不同呢.
好吧 很久没上来了 图吧混久了 年终都在研究二手主机{:3_129:} 二手主板666 二手cpu66666 简直好用极了
app也早就做好了 丢商店去了 修bug修了几次 正常稳定了也久没怎么管咯 {:3_96:} 并没有用上啥创建文件的方法啊{:3_97:}
大家有兴趣就去下载来用用吧——没广告也不用钱啊
FIleHashCheck:
https://www.microsoft.com/zh-cn/store/apps/filehashcheck/9nblggh5ff52
Quote***链接停止解析***
怎么做才能分段读取啊?第一次用FileIO接收数据感觉跟Stream很不同呢.
using System.IO;
var stream = (await file.OpenReadAsync()).AsStream();
直接把文件作为输入流,申请一块缓冲区,重复了利用
Quote***链接停止解析***
using System.IO;
var stream = (await file.OpenReadAsync()).AsStream();
恩 虽然已经解决了 但还是谢谢啊