System.Text.UnicodeEncoding.Default.GetString(byte[] x);
得到字符串.

解决方案 »

  1.   

    http://dotnet.aspx.cc/ShowDetail.aspx?id=EY1XLDYV-PIDF-43LO-1WFL-FMY5ALE1F635
      

  2.   

    你的网页内容可以保存成为一个XML文件。网页版型可以保存成为XSL形势的文件。这样将XML文件保存在数据库中。具体技术参考XSL和XML网页显示方式,其实CSDN的网页就是这样实现的!所有的帖子都是XML数据,有一个版型文件:/expert/Xsl/2.xsl。定义网页版型的。
      

  3.   

    找MSDN帮助  都有的
    同意1楼的    能存进去  拿出来还不简单:-)
      

  4.   

    http://dotnet.aspx.cc/ShowDetail.aspx?id=EY1XLDYV-PIDF-43LO-1WFL-FMY5ALE1F635
    在SQL Server中保存和输出任意类型的文件
      

  5.   

    请参考孟宪会的。
    向SQL Server数据库添加图片 
    http://dotnet.aspx.cc/ShowDetail.aspx?id=2A5DD7C6-A45A-48AB-A2E8-342A29F17506
    从SQL Server数据库提取图片并显示在DataGrid
    http://dotnet.aspx.cc/ShowDetail.aspx?id=ECD9AE16-8FF0-4A1C-9B9F-5E8B641CB1B1
      

  6.   

    http://dotnet.aspx.cc/ShowDetail.aspx?id=ECD9AE16-8FF0-4A1C-9B9F-5E8B641CB1B1
      

  7.   

    采用流的方式读出,可以参考图片的读出读入方式、WORD文件的存入读出方式http://dotnet.aspx.cc/ShowDetail.aspx?id=EY1XLDYV-PIDF-43LO-1WFL-FMY5ALE1F635
    这篇文章不错!
      

  8.   

    showfile.aspx的主要代码Response.AddHeader("Content-Type",dr["suffix"].ToString());
    Response.BinaryWrite((byte[])dr["content"]);
    为什么在showfile.aspx页面中显示数据库中的文件时,总是出现是打开还是保存的对话框?
    怎么样使这个对话框不出现,而直接显示文件?
      

  9.   

    碰巧我做了一个这样类似的东西,仅作参考:
    1、文件的上传和下载:
    /// <summary>
    /// 上传文件到数据库
    /// </summary>
    /// <param name="filePosted"></param>
    /// <param name="tableName"></param>
    /// <param name="columnName"></param>
    /// <param name="locateCondition"></param>
    /// <returns></returns>
    protected  bool UploadFile(HttpPostedFile filePosted,string tableName,string columnName,ArrayList columnValue,string locateCondition)
    {
    try
    {
    Upload(filePosted);
    ArrayList colValue = columnValue;
    colValue.Add(_FileData);
    object[] col = new object[colValue.Count];
    columnValue.CopyTo(col);
    WriteFileToDb(tableName,columnName,col,locateCondition);
    return true;
    }
    catch
    {
    return false;
    }
    } /// <summary>
    /// 上传文件到服务器某路径下
    /// </summary>
    /// <param name="filePosted"></param>
    /// <param name="filePath"></param>
    /// <returns></returns>
    protected bool UploadFile(HttpPostedFile filePosted,string filePath)
    {
    try
    {
    Upload(filePosted);
    WriteFileToDisk(filePath);
    return true;
    }
    catch
    {
    return false;
    }
    } /// <summary>
    /// 下载文件到客户端
    /// </summary>
    /// <param name="filePath"></param>
    protected void DownloadFile(string tableName,string columnName,string locateCondition)
    {
    string mySql = "select "+columnName+" from "+tableName+" where "+locateCondition;
    SqlDataReader dr;
    using (KY_BASE.DataAccess myDA = new KY_BASE.DataAccess())
    {
    dr = myDA.ExeReader(mySql);
    dr.Read();
    Response.Clear();
    Response.OutputStream.Write((byte[])dr[columnName],0,65535);
    }
    Response.End();
    } private void Upload(HttpPostedFile filePosted)
    {
    if (filePosted == null){return;}
    HttpPostedFile myFile = filePosted;
    int fileLen = myFile.ContentLength;
    _FileData = new byte[fileLen];
    myFile.InputStream.Read(_FileData,0,fileLen);
    } private void WriteFileToDb(string tableName,string columnName,object[] columnValue,string locateCondition)
    {
    string mySql = "select "+columnName+" from "+tableName+" where "+locateCondition;
    using (KY_BASE.DataAccess myDA = new KY_BASE.DataAccess())
    {
    myDA.UpdateRow(mySql,columnName.Split(new char[]{','}),columnValue);
    }
    }

    private void WriteFileToDisk(string filePath)
    {
    FileStream newFile = new FileStream(filePath,FileMode.Create);
    newFile.Write(_FileData,0,_FileData.Length);
    newFile.Close();
    }
      

  10.   

    2、从数据库取出网页文件:
    /// <summary>
    /// 获得本页面用户定义的html串
    /// </summary>
    /// <param name="pageID">页面ID</param>
    /// <returns></returns>
    public string GetHtml(string pageID,ref string kindID)
    {
    string mySql = "select html,FileSize,KindID from s_page where PageID='"+pageID+"'";
    SqlDataReader dr;
    using (KY_BASE.DataAccess myDA = new KY_BASE.DataAccess())
    {
    dr = myDA.ExeReader(mySql);
    if (dr.Read() && !dr.IsDBNull(0))
    {
    kindID = dr.GetString(2);
    MemoryStream ms = new MemoryStream((byte[])dr[0],0,Convert.ToInt32(dr[1]));
    System.Text.StringBuilder sb = new System.Text.StringBuilder(8192);
    using (StreamReader sr = new StreamReader(ms,System.Text.Encoding.Default))
    {
    string line;
    while ((line = sr.ReadLine()) != null)
    {
    sb.Append(line);
    }
    }
    ms.Close();
    dr.Close();
    string html = sb.ToString();
    return html.Substring(html.IndexOf("table")-1,html.LastIndexOf("table")+6-html.IndexOf("table")+1);
    }
    else
    {
    dr.Close();
    return "";
    }
    }//end using
    }
      

  11.   

    3、至于显示就简单了,你可以Response.write到客户端去。
    可能需要将特殊符号进行转换(<,>号),到客户端再反向转换一次。
    还可以使用SgmlReader把html转换为xml串:然后在客户端就读取xml数据岛中的数据,然后显示即可:
    /// <summary>
    /// 将html转换为xml串,同时将转换中产生的错误信息写入属性Errors
    /// </summary>
    /// <param name="strInputHtml"></param>
    /// <returns></returns>
    public string HtmlToXml(string strInputHtml)

    string strOutputXhtml = String.Empty;
    SgmlReader reader = new SgmlReader(); 
    reader.DocType ="HTML"; 
    StringReader sr = new System.IO.StringReader(strInputHtml); 
    reader.InputStream = sr;
    StringWriter sw = new StringWriter();
    XmlTextWriter w =new XmlTextWriter( sw);
    reader.Read();
    while(!reader.EOF)
    {
    w.WriteNode(reader,true);

    w.Flush();
    w.Close(); 
    this.Errors = Convert.ToString(reader.ErrorLog);
    return sw.ToString();
    }
    客户端:
    xmlPageData = new ActiveXObject("msxml2.DOMDocument");
    xmlPageData.async = false;
    xmlPageData.loadXML(PageData.xml);
             showDataDiv.innerHTML = PageData.xml;
      

  12.   

    为什么在showfile.aspx页面中显示数据库中的文件时,总是出现是打开还是保存的对话框?
    怎么样使这个对话框不出现,而直接显示文件?