zoukankan      html  css  js  c++  java
  • .net core Api上传Txt文档读取并且解决乱码问题

    .net core Api上传Txt文档读取并且解决乱码问题

    一、直接先上关键:注意下方的strm 是 IFormFile file对象,并且此文只针对API上传TXT所处理。

      1. 读取的代码:

    using (StreamReader reader = new StreamReader(strm, Encoding.GetEncoding("GB2312")))
                    {
    
                        string line = null;
                        while ((line = reader.ReadLine()) != null)
                        {
                             //  line是读取到这一行的数据
                        }
                    }    

      2. 保存txt文件并且的代码:

    string name = Guid.NewGuid().ToString() + ".txt";
                            string filePath = "/Uploads/txt/" + DateTime.Now.ToString("yyyy-MM-dd") + "/" + name;
    
                            string rootPath = Directory.GetCurrentDirectory();
                            string path = $@"{rootPath}/Uploads/txt/" + DateTime.Now.ToString("yyyy-MM-dd");
                            string pathRq = $@"/Uploads/txt/" + DateTime.Now.ToString("yyyy-MM-dd") + "/" + name;
    
                            if (!Directory.Exists(path))
                            {
                                Directory.CreateDirectory(path);
                            }
    
                            using (FileStream fs = System.IO.File.Create(path + "/" + name))
                            {
                                StreamWriter sw = new StreamWriter(fs);
                                string str = "123456"sw.WriteLine(str);
    
                                sw.Flush();
                                sw.Close();
                            }

    3. 如果导入的文件中存在中文,那么就会出现乱码问题。解决方案如下:

    1. 指定读取文件是GB2312
    using (StreamReader reader = new StreamReader(strm, Encoding.GetEncoding("GB2312")))
    2. 注入:Encoding到容器中
    Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);

    谢谢学习!!!关注我,共同进步

  • 相关阅读:
    [HEOI2014]南园满地堆轻絮
    [HEOI2016/TJOI2016]树
    初赛知识点
    [10.4模拟赛]T2
    [ZJOI2012]灾难
    [SDOI2010]古代猪文
    [9.26模拟赛]T1
    [9.26模拟赛]T3
    [9.26模拟赛]T2
    [9.19模拟赛]最小粒子数
  • 原文地址:https://www.cnblogs.com/wangjinya/p/15352134.html
Copyright © 2011-2022 走看看