我正在创建一个xamarin表单应用程序,允许用户从外部存储中选择多个音频文件。我在选择多个文件方面取得了成功,但每当我尝试读取文件内容时,它都会给我一个例外,即'System.IO.DirectoryNotFoundException'。我使用以下方法从音频文件中读取字节:
int('0x61', 16)
它总是给我错误。请帮我这个,以便我可以将文件内容读取为字节数组。提前谢谢。
答案 0 :(得分:0)
每当我尝试读取文件内容时,它都会给我一个例外情况' System.IO.DirectoryNotFoundException'
问题是当您使用DirectoryNotFoundException
方法获取文件路径时,格式错误。因此,当系统使用此路径搜索文件时,它会告诉您uri.ToString()
,实际上,文件路径不存在。
例如,当您使用Path == /file:/storage/emulated/0/netease/cloudmusic/Music/love.MP3
//Not valid
时,您的文件路径如下所示:
uri.Path
解决方案:
使用byteArray = System.IO.File.ReadAllBytes(uri.Path);
代替,使用方法如下:
uri.Path == /storage/emulated/0/netease/cloudmusic/Music/love.MP3
其文件路径:
<div class="container">
<div class="panel panel-default">
<div class="panel-heading">Implementation/Migration Plan</div>
<div class="panel-body">
<table class="table table-condensed" width="50">
<thead>
<tr>
<th>Activities</th>
<th>Duration</th>
<th>Responsible</th>
<th>Back-out Procedure</th>
<th>Remarks</th>
</tr>
</thead>
<tbody>
<tr>
<td contenteditable='true'></td>
<td contenteditable='true'></td>
<td contenteditable='true'></td>
<td contenteditable='true'></td>
<td contenteditable='true'></td>
</tr>
<tr>
<td contenteditable='true'></td>
<td contenteditable='true'></td>
<td contenteditable='true'></td>
<td contenteditable='true'></td>
<td contenteditable='true'></td>
</tr>
<tr>
<td contenteditable='true'></td>
<td contenteditable='true'></td>
<td contenteditable='true'></td>
<td contenteditable='true'></td>
<td contenteditable='true'></td>
</tr>
<tr>
<td contenteditable='true'></td>
<td contenteditable='true'></td>
<td contenteditable='true'></td>
<td contenteditable='true'></td>
<td contenteditable='true'></td>
</tr>
<tr>
<td contenteditable='true'></td>
<td contenteditable='true'></td>
<td contenteditable='true'></td>
<td contenteditable='true'></td>
<td contenteditable='true'></td>
</tr>
</div>
</table>
</tbody>
</div>
</div>
</div>
现在,它运作正常。