c# 将文件读取成二进制流
通用的将文件读取为二进制方法
1 2 3 4 5 | FileStream fs = new FileStream(filePath, FileMode.Open, FileAccess.Read); BinaryReader r = new BinaryReader(fs); byte [] fileArray = r.ReadBytes(( int )fs.Length); fs.Dispose(); |
下面介绍C#实现文件与二进制互转并存入数据库
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | //把文件转成二进制流出入数据库 FileStream fs = new FileStream(textBox1.Text, FileMode.Open); BinaryReader br = new BinaryReader(fs); Byte[] byData = br.ReadBytes(( int )fs.Length); fs.Close(); string conn = "server=.;database=testDB;Uid=sa;Pwd=sa " ; SqlConnection myconn = new SqlConnection(conn); myconn.Open(); string str = "insert into pro_table (pro_name,pro_file) values('测试文件',@file)" ; SqlCommand mycomm = new SqlCommand(str, myconn); mycomm.Parameters.Add( "@file" , SqlDbType.Binary, byData.Length); mycomm.Parameters[ "@file" ].Value = byData; mycomm.ExecuteNonQuery(); myconn.Close(); //从数据库中把二进制流读出写入还原成文件 string conn = "server=.;database=testDB;Uid=sa;Pwd=sa " ; string str = "select pro_file from pro_table where pro_name='测试文件' " ; SqlConnection myconn = new SqlConnection(conn); SqlDataAdapter sda = new SqlDataAdapter(str, conn); DataSet myds = new DataSet(); myconn.Open(); sda.Fill(myds); myconn.Close(); Byte[] Files = (Byte[])myds.Tables[0].Rows[0][ "pro_file" ]; BinaryWriter bw = new BinaryWriter(File.Open( "D:\\2.rdlc" ,FileMode.OpenOrCreate)); bw.Write(Files); bw.Close(); |
分类:
c#/.net
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
· 零经验选手,Compose 一天开发一款小游戏!