• c#中byte[]和string的转换


    Using System.Text;
    byte[ ] 转换为string
    byte[ ] image;
    string ll = Encoding.Default.GetString(image);

    string 转换为byte[ ]
    string ss;
    byte[] b = Encoding.Default.GetBytes(ss);
    数据库中image类型的字段的处理。
    首先我想从数据库中读出图片(以image类型存储的), 并且写入txt文件中:
    private void GetImage()
      {
        string conn = "Server=192.168.0.11; User id=user; Pwd=pwd; Database=database";
        SqlConnection sqlCon = new SqlConnection(conn);
        string sql = "SELECT ImageFile, PersonID FROM Persons where PersonID = 1";
        SqlCommand myCommand = new SqlCommand();
        myCommand.Connection = sqlCon;
        myCommand.CommandType = CommandType.Text;
        myCommand.CommandText = sql;
        DataTable myTable = new DataTable();
        SqlDataAdapter myDataAda = new SqlDataAdapter();
        myDataAda.SelectCommand = myCommand;
        try
        {
          sqlCon.Open();
          myDataAda.Fill(myTable);
          sqlCon.Close();
          if(myTable.Rows.Count>0)
          {
            byte[] image = (byte[])myTable.Rows[0]["ImageFile"];
            string ll = Encoding.Default.GetString(image);
            WriteStr(@"F:\test.txt",ll);
          }
        }
        catch(Exception ex)
        {
          string err = ex.Message;
        }
        finally
        {
          sqlCon.Close();
          myCommand.Dispose();
          myDataAda.Dispose();
        }
      }
      private void WriteStr(string strLogFileName, string strLogContent)
      {
        try
        {
          FileInfo objFileInfo = new FileInfo(strLogFileName);
          using (FileStream objFileStream = objFileInfo.OpenWrite())
          {
            using (StreamWriter objStreamWriter = new StreamWriter(objFileStream))
            {
              objStreamWriter.BaseStream.Seek(0, SeekOrigin.End);
              objStreamWriter.Write("{0}", strLogContent);
            }
          }
        }
        catch
        {
        }
      }
    其次,需要把图片从txt文件中读出然后存入数据库中。
    string ss = ReadStr(@"F:\test.txt");
        byte[] b = Encoding.Default.GetBytes(ss);
        string conn = "Server=server; User id=user; Pwd=pwd; Database=database";
        SqlConnection sqlCon = new SqlConnection(conn);
        string sql = "update Persons set ImageFile=@img where PersonID = 1";
        SqlCommand myCommand = new SqlCommand();
        SqlParameter sp = new SqlParameter("@img",SqlDbType.Image);
        myCommand.Connection = sqlCon;
        myCommand.CommandType = CommandType.Text;
        myCommand.CommandText = sql;
        sp.Value = b;
        myCommand.Parameters.Add(sp);
        try
        {
          sqlCon.Open();
          myCommand.ExecuteNonQuery();
          sqlCon.Close();
        }
        catch(Exception eS)
        {
          string ee = eS.Message;
        }
        finally
        {
          sqlCon.Close();
          myCommand.Dispose();
        }
  • 相关阅读:
    设置命令窗口显示当前用户名及数据库名称
    ORACLE 10g、11g批量刷新用户密码
    RMAN duplicate from active database
    闪回恢复区开启
    NFS配置
    临时表空间组创建及删除
    Building Applications with Force.com and VisualForce(六):Designing Applications for Multiple users: Accommodating Multiple Users in your App
    Data Management and Data Management Tools
    Building Applications with Force.com and VisualForce (DEV401)(五):Application Essential: Introducing Business Logic
    Building Applications with Force.com and VisualForce (DEV401) (四):Building Your user Interface
  • 原文地址:https://www.cnblogs.com/ewyb/p/1621020.html
Copyright © 2020-2023  润新知