C# 如何从AJAX读取文件的所有字节?
我有一个JQ函数可以发送文件(我尝试发送路径,但我需要发送文件。现在我需要在C#中接收并转换为字节数组) 如果我有类似于:C# 如何从AJAX读取文件的所有字节?,c#,ajax,file,C#,Ajax,File,我有一个JQ函数可以发送文件(我尝试发送路径,但我需要发送文件。现在我需要在C#中接收并转换为字节数组) 如果我有类似于: $('#i_submit').click(function (event) { $.ajax({ url: "Main/CP_Upload", data: { "name": name,"type":type,"file":file } }); }); (我检查它是否工作,获取文件) 我能像你一样收到吗 public void CP_Upload(
$('#i_submit').click(function (event) {
$.ajax({
url: "Main/CP_Upload",
data: { "name": name,"type":type,"file":file }
});
});
(我检查它是否工作,获取文件)
我能像你一样收到吗
public void CP_Upload(string name,string type,File file)
(我得到数据,只是我不知道变量文件定义所需的System.IO.File类型…)
另一个问题是我是否可以键入System.IO.File转换为字节数组
Thanx文件。ReadAllBytes(字符串路径)将为您提供文件中的所有字节
或者,您可以输入FileInfo
参数,并读取每个字节:
(示例)
如果您确实有一个文件/流,请参见……浏览器不支持这样的ajax上载吗?我想说您收到的是一个文件名……不是一个字节流。@SimonWhitehead很好地捕捉到了。。
var fi = new FileInfo(path);
using (FileStream fs = fi.OpenRead())
{
byte[] b = new byte[1024];
UTF8Encoding temp = new UTF8Encoding(true);
while (fs.Read(b,0,b.Length) > 0)
{
Console.WriteLine(temp.GetString(b));
}
}