文件与字符串之间的转换

来源:互联网 发布:查看svn端口号命令 编辑:程序博客网 时间:2024/05/21 14:41
/// <summary>
        /// 将传进来的文件转换成字符串
        /// </summary>
        /// <param name="FilePath">待处理的文件路径(本地或服务器)</param>
        /// <returns></returns>
        public string FileToBinary(string FilePath)
        {
            FileStream fs = new FileStream(FilePath, FileMode.Open, FileAccess.Read);
            //利用新传来的路径实例化一个FileStream对像
            int fileLength = Convert.ToInt32(fs.Length);
            //得到对像大小
            byte[] fileByteArray = new byte[fileLength];
            //声明一个byte数组
            BinaryReader br = new BinaryReader(fs);
            //声明一个读取二进流的BinaryReader对像
            for (int i = 0; i < fileLength; i++)
            {//循环数组
                br.Read(fileByteArray, 0, fileLength);
                //将数据读取出来放在数组中
            }
            string strData = Convert.ToBase64String(fileByteArray);
            //装数组转换为String字符串
            return strData;
        }



        /// <summary>
        /// 将传进来的字符串保存为文件
        /// </summary>
        /// <param name="path">需要保存的位置路径</param>
        /// <param name="binary">需要转换的字符串</param>
        public void BinaryToFile(string path, string binary)
        {
            FileStream fs = new FileStream(path, FileMode.Create, FileAccess.Write);
            //利用新传来的路径实例化一个FileStream对像
            BinaryWriter bw = new BinaryWriter(fs);
            //实例化一个用于写的BinaryWriter
            bw.Write(Convert.FromBase64String(binary));
            bw.Close();
            fs.Close();
        }