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);

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

  • 相关阅读:
    String类中的常用方法(Java)
    Struts2的Lambda表达式的使用
    Struts2的环境搭建
    Servlet 3.0
    关于URLWriter的用法
    PrintStream与PrintWriter
    java中的System.nanoTime与System.currentTime
    java多线程之CyclicBarrier类
    多线程java IO之管道流
    消费者与生产者
  • 原文地址:https://www.cnblogs.com/wangjinya/p/15352134.html
Copyright © 2011-2022 走看看