怎么把文件转成二进制的啊? 如rar、doc、txt MP3 这些多一样的转吗?
答案:2 悬赏:60 手机版
解决时间 2021-02-19 02:35
- 提问者网友:浩歌待明月
- 2021-02-18 01:47
怎么把文件转成二进制的啊? 如rar、doc、txt MP3 这些多一样的转吗?
最佳答案
- 五星知识达人网友:罪歌
- 2021-02-18 02:49
嗯 都是一样的。 下面是转换的代码。存的时候在数据库建一个Image类型的字段存储就行了
///
/// 文件转二进制
///
/// 文件的路径
///
private Byte[] getFile(string Filepath)
{
string str = Filepath;
FileStream file = new FileStream(str, FileMode.Open, FileAccess.Read);
if (file.Length / 1024 / 1024 > 2) //涉及到同步 要选择上传文件的大小
{
MessageBox.Show("附件不能大于2M", "系统提示");
return null;
}
else
{
Byte[] byteData = new Byte[file.Length];
file.Read(byteData, 0, byteData.Length);
file.Close();
return byteData;
}
}
这里顺便给你一个比较常用的,也是我在项目开发中写的代码。就是在点击一个下载连接把数据库存的二进制数重新转换成文件给用户下载。
saveFileDialog1.Filter = " txt files(*.txt)|*.txt|All files(*.*)|*.*";
//设置默认文件类型显示顺序
saveFileDialog1.FilterIndex = 2;
//保存对话框是否记忆上次打开的目录
saveFileDialog1.RestoreDirectory = true;
//点了保存按钮进入
if (saveFileDialog1.ShowDialog() == DialogResult.OK)
{
////获得文件路径
//string localFilePath = saveFileDialog1.FileName.ToString();
////获取文件名,不带路径
//string fileNameExt = localFilePath.Substring(localFilePath.LastIndexOf("\\") + 1);
////获取文件路径,不带文件名
saveFileDialog1.DefaultExt = dt.Rows[0]["Extension"].ToString(); //后缀名
saveFileDialog1.AddExtension = true;
byte[] mybyte = (byte[])dt.Rows[0]["Accessory"]; //二进制
FileStream fs = new FileStream(this.saveFileDialog1.FileName + "." + dt.Rows[0]["Extension"], FileMode.Create, FileAccess.Write, FileShare.Read | FileShare.Write);
fs.Write(mybyte, 0, mybyte.Length);
fs.Flush();
fs.Close();
}
///
/// 文件转二进制
///
/// 文件的路径
///
private Byte[] getFile(string Filepath)
{
string str = Filepath;
FileStream file = new FileStream(str, FileMode.Open, FileAccess.Read);
if (file.Length / 1024 / 1024 > 2) //涉及到同步 要选择上传文件的大小
{
MessageBox.Show("附件不能大于2M", "系统提示");
return null;
}
else
{
Byte[] byteData = new Byte[file.Length];
file.Read(byteData, 0, byteData.Length);
file.Close();
return byteData;
}
}
这里顺便给你一个比较常用的,也是我在项目开发中写的代码。就是在点击一个下载连接把数据库存的二进制数重新转换成文件给用户下载。
saveFileDialog1.Filter = " txt files(*.txt)|*.txt|All files(*.*)|*.*";
//设置默认文件类型显示顺序
saveFileDialog1.FilterIndex = 2;
//保存对话框是否记忆上次打开的目录
saveFileDialog1.RestoreDirectory = true;
//点了保存按钮进入
if (saveFileDialog1.ShowDialog() == DialogResult.OK)
{
////获得文件路径
//string localFilePath = saveFileDialog1.FileName.ToString();
////获取文件名,不带路径
//string fileNameExt = localFilePath.Substring(localFilePath.LastIndexOf("\\") + 1);
////获取文件路径,不带文件名
saveFileDialog1.DefaultExt = dt.Rows[0]["Extension"].ToString(); //后缀名
saveFileDialog1.AddExtension = true;
byte[] mybyte = (byte[])dt.Rows[0]["Accessory"]; //二进制
FileStream fs = new FileStream(this.saveFileDialog1.FileName + "." + dt.Rows[0]["Extension"], FileMode.Create, FileAccess.Write, FileShare.Read | FileShare.Write);
fs.Write(mybyte, 0, mybyte.Length);
fs.Flush();
fs.Close();
}
全部回答
- 1楼网友:胯下狙击手
- 2021-02-18 03:00
任务占坑
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯