头发很旺盛 2019-07-25 18:02 采纳率: 0%
浏览 750

c#相对路径和·绝对路径

在局域网内,连接其它电脑的MySQL数据库,在数据库中取到图片的相对路
径,现在需要把取到的图片转为base64编码怎么办?因为是相对路径,而且
还是其他电脑,所以找不到图片,在自己电脑上按照数据库中的相对路径自己
弄了一张图片,现在想要找到这张图片,通过相对路径,是否可以实现?

        /// <summary>
        /// 将图片转为base64编码
        /// </summary>
        /// <param name="imgFile">图片相对地址地址</param>
        /// <returns>图片的base64编码</returns>
        public static String getImageStr(String imgFile)
        {
            //string tmpRootDir = HttpContext.Current.Server.MapPath(System.Web.HttpContext.Current.Request.ApplicationPath.ToString());//获取程序根目录
            //string urlPath = tmpRootDir + imgFile.Replace(@"/", @"/"); //转换成绝对路径
            //String strPath = System.Web.HttpContext.Current.Server.MapPath(@imgFile);
            //string relativePath = "";
            //System.IO.Path.Combine(imgFile, relativePath);
            //string juedui = System.Web.HttpContext.Current.Server.MapPath(imgFile);
            FileStream fs = File.OpenRead(imgFile); //OpenRead
            int filelength = 0;
            filelength = (int)fs.Length; //获得文件长度 
            Byte[] image = new Byte[filelength]; //建立一个字节数组 
            fs.Read(image, 0, filelength); //按字节流读取 
            //System.Drawing.Image result = System.Drawing.Image.FromStream(fs);
            fs.Close();
            string imgData64 = Convert.ToBase64String(image);
            return imgData64;
        }     
  • 写回答

2条回答 默认 最新

  • 1进击的小白 2019-07-25 20:22
    关注

    可以实现的,比如相对路径为/images/1.jpg,那你在程序根目录下创建个images文件夹,里面放个1.jpg图片就可以了。其实转化为绝对路径后不一定跟其他电脑的一样,因为程序本身放的位置不一样。

    评论

报告相同问题?

悬赏问题

  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置