FileInfo finfo = new FileInfo(affixPathLb.Text);
if (finfo.Exists)
{
bData = new byte[finfo.Length];
//finfo.OpenRead().Read(bData,0,(int)finfo.Length);
using (FileStream fstream = finfo.OpenRead())
{
bData = new byte[finfo.Length];
fstream.Read(bData,0,(int)finfo.Length);
fstream.Close();
}
}
string strInsert = "insert into TAB set File = '"+bData+"'";
我这样将一个文档上存到数据库里
现在我想打开这个文档
先把这它保存到本机上某个文件夹里 然后打开它
在保存时 要读取文件 读出来是System.byte[]if (!Directory.Exists(@"d:\PersonalManager\File")) //创建一个文件夹
{
Directory.CreateDirectory(@"d:\PersonalManager\File");
} string strFullName = @"d:\PersonalManager\File" + @"\" + accTxt.Text;
if (File.Exists(strFullName)) //判断文件是否存在,存在则先删除
{
File.Delete(strFullName);
} byte[] fData = null;
if (dTab.Rows[0]["Affix"] != DBNull.Value)
fData = (byte[])dTab.Rows[0]["Affix"];
if (fData != null)
{
FileInfo file = new FileInfo(strFullName);
if (!file.Exists)
{
using (FileStream fstream = file.Create())
{
fstream.Write(fData,0,fData.Length);
}
}
else
{
using (FileStream fstream = file.OpenWrite())
{
fstream.Write(fData,0,fData.Length);
}
}
}
这是读取的代码我也不知道要怎么写的 这些都是在网上找的
我也是第一次写 不会写 请各位大虾指教
if (finfo.Exists)
{
bData = new byte[finfo.Length];
//finfo.OpenRead().Read(bData,0,(int)finfo.Length);
using (FileStream fstream = finfo.OpenRead())
{
bData = new byte[finfo.Length];
fstream.Read(bData,0,(int)finfo.Length);
fstream.Close();
}
}
string strInsert = "insert into TAB set File = '"+bData+"'";
我这样将一个文档上存到数据库里
现在我想打开这个文档
先把这它保存到本机上某个文件夹里 然后打开它
在保存时 要读取文件 读出来是System.byte[]if (!Directory.Exists(@"d:\PersonalManager\File")) //创建一个文件夹
{
Directory.CreateDirectory(@"d:\PersonalManager\File");
} string strFullName = @"d:\PersonalManager\File" + @"\" + accTxt.Text;
if (File.Exists(strFullName)) //判断文件是否存在,存在则先删除
{
File.Delete(strFullName);
} byte[] fData = null;
if (dTab.Rows[0]["Affix"] != DBNull.Value)
fData = (byte[])dTab.Rows[0]["Affix"];
if (fData != null)
{
FileInfo file = new FileInfo(strFullName);
if (!file.Exists)
{
using (FileStream fstream = file.Create())
{
fstream.Write(fData,0,fData.Length);
}
}
else
{
using (FileStream fstream = file.OpenWrite())
{
fstream.Write(fData,0,fData.Length);
}
}
}
这是读取的代码我也不知道要怎么写的 这些都是在网上找的
我也是第一次写 不会写 请各位大虾指教
解决方案 »
- C#中winsock的问题
- 有没有办法将dll打进exe,做成一个单一应用程序
- 各位大哥,下面这些代码能有什么用?
- C#中如何获得应用程序的标题
- 笨人正在学做Controls,down了一个源代码。其中一段不明白。会做自定义控件的请进(windows)
- 如何在98中使用C#中的MS Jet 4.0 OLE DB数据连接。
- 在C#.net中能实现一个DataGrid单元格内放两个linkbutton吗?-----多谢!!
- 应用程序异常关闭,求HELP
- wp7实现内存占用情况的代码
- 如何在 System.Windows.Forms.MonthCalendar 控件的某几天上画个红色的圆圈?
- webForm中怎样动态产生提示
- 如何把xml文件读入datagrid,再写入到数据库中
using System;namespace yourNamespace
{
/// <summary>
/// CUploadFile 的摘要说明。
/// </summary>
public class CUploadFile
{
/*====================================================
Code By Icyplayer
E-Mail:[email protected]
请尊重原创,使用请保留此信息
======================================================*/
/// <summary> /// 该类实现了文件上传功能,需要指定HtmlInputFile 控件
/// 功能1:可以对文件类型进行限制
/// 功能2:可以对文件大小上限进行限制
///
/// example:
/// CUploadFile up;
/// up = new CUploadFile(HtmlInputFile1);
/// up.SvaePath = "c:\\inetpub\\wwwroot\\upload\\"; //必须指定,保存文件的路径
/// up.AllowExtFile = ".jpg;.gif;"; //允许的类型
/// up.MaxSize = 500 * 1024; //大小限制500k
/// up.NewFileName = "newfile1"; //指定新的文件名,不指定则不修改
/// int errcode = up.Start(); //开始上传
/// string errmsg = up.GetErr(errcode); //获得错误描述信息
/// Response.write(errmsg); //显示错误信息
/// </summary> System.Web.UI.HtmlControls.HtmlInputFile _scrfile;//HtmlInputFile 控件 string _savepath = "";//保存文件的路径
string _newfilename = "";//文件重命名为
string _newextfile = "";//文件后缀
int _maxsize = 0;//文件大小限制
string _extfile = "";//允许的后缀名,用“;”分割,包含“.”,为空时允许全部文件类型 //构造函数,不指定任何数据
public CUploadFile()
{ }
//构造函数,指定了HtmlInputFile 控件
public CUploadFile(System.Web.UI.HtmlControls.HtmlInputFile scrFile)
{
this.FileSource = scrFile;
}
//构造函数,指定了HtmlInputFile 控件、保存路径,文件名不作修改
public CUploadFile(System.Web.UI.HtmlControls.HtmlInputFile scrFile, string SavePath)
{
this.FileSource = scrFile;
_savepath = SavePath;
_newfilename = scrFile.PostedFile.FileName;
}
//构造函数,指定了HtmlInputFile 控件、保存路径、新的文件名(不包含后缀)
public CUploadFile(System.Web.UI.HtmlControls.HtmlInputFile scrFile, string SavePath,string NewFileName)
{
this.FileSource = scrFile;
_savepath = SavePath;
_newfilename = NewFileName;
}
//准备就绪后,开始上传
public int Start()
{
if(_scrfile.PostedFile.ContentLength == 0)
{
return 504; //no source
}
else if((_scrfile.PostedFile.ContentLength >= _maxsize)&&(_maxsize != 0))
{
return 501; //out of the range
}
else if((_savepath == "")||(_newfilename == ""))
{
return 505; //no filename or path
} else if(!CheckExt())
{
return 502; //ext is not allow
} try
{
_scrfile.PostedFile.SaveAs(_savepath + _newfilename + _newextfile);
return 0;
}
catch
{
return 500; //unknow error
}
}
//检测后缀是否符合要求
private bool CheckExt()
{
if(_extfile == "") return true;
string [] exts = null;
exts = _extfile.Split(new char[]{';'});
int i = 0;
for(i=0;i<=exts.GetUpperBound(0);i++)
{
if(exts[i] == _newextfile) return true;
}
return false;
}
//获取或指定HtmlInputFile控件
public virtual System.Web.UI.HtmlControls.HtmlInputFile FileSource
{
get
{
return _scrfile;
}
set
{
string s;
_scrfile = value;
s = _scrfile.PostedFile.FileName;
s = s.Substring(s.LastIndexOf('.'));
_newextfile = s;
}
}
//调用start()后,若返回值不为0,调用可获取错误信息
public string GetErr(int errCode)
{
switch(errCode)
{
case 0:
return "文件已成功上传";
case 500:
return "未知内部或外部的错误";
case 501:
return "文件大小超出限制";
case 502:
return "文件类型不符合规定,只允许:" + _extfile + "类型的文件";
case 504:
return "没有指定需要上传的文件";
default:
return "未知内部或外部的错误";
} }
//获取或指定文件保存路径
public virtual string SavePath
{
get
{
return _savepath; }
set
{
_savepath = value;
if(_savepath.Substring(_savepath.Length) != "\\")
{
_savepath+="\\";
}
}
}
//获取或指定文件大小上限
public virtual int MaxSize
{
get
{
return _maxsize;
}
set
{
_maxsize = value;
}
} //获取或指定允许的文件后缀列表,用“;”分割,包含“.”
public virtual string AllowExtFile
{
get
{
return _extfile;
}
set
{
_extfile = value;
}
}
//获取或指定新的文件名,不包含后缀
public virtual string NewFileName
{
get
{
return _newfilename;
}
set
{
_newfilename = value;
}
} }
}
1楼:我在做window程序,不是asp.net
2楼:什么参数啊 不太懂你的意思
3楼: ………
4楼:我要做的就是上传一个文档(word文档)到数据库里,然后有一个button点击后就打开这个word文档,当然首先我是想先把它保存到某个目录下,然后用代码将这个word文档打开。我运行上面的代码后 也没有什么错误跳出来,就是在文档不会在点击按钮后自动打开。再就是我找到文档手动打开 里面原来的文档内容没有 只有system.byte[] 这样的字符 我是第一次写这个 也不太懂哪里出错了 所以请教各位
5楼:呵呵 ,你用的是web里自带的那个上传组件吧,以前用那个写过上传图片,在数据库里保存一个路径然后将图片保存到些路径下。可是没有用流去写过。