C# .NET Core 以 Big 5 (大五碼)編碼格式讀取檔案 (ruyut.com)

C# .NET Core 以 Big 5 (大五碼)編碼格式讀取檔案

日期: 4月 27, 2022
之前在寫 C# .NET Framework 的時候要使用其他編碼格式很簡單,寫上編碼格式就可以了,但今天在 .NET Core 6.0 讀取檔案使用 Big5(950) 的時候,拋出這個錯誤:

Unhandled exception. System.NotSupportedException: No data is available for encoding 950. For information on defining a custom encoding, see the documentation for the Encoding.RegisterProvider method.
Bash
Copy

原來 .NET Core 只有保留最基礎的編碼格式,其他的編碼格式使用的時候需要自己增加

解決方法

只要安裝一個套件和加入一行程式碼就解決了

需要先從 NuGet 安裝 System.Text.Encoding.CodePages

Install-Package System.Text.Encoding.CodePages -Version 6.0.0
Package-manager
Copy

註冊使其支援不同的編碼格式

Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
C#
Copy

接下來就和以前一樣了

程式碼示範: 讀取文件並輸出

using (System.IO.StreamReader reader = new System.IO.StreamReader(@"file.txt", System.Text.Encoding.GetEncoding(950)))
{
while (!reader.EndOfStream)
{
Console.WriteLine(reader.ReadLine());
}
}

DotNetCore 提示 系统不支持“big5”编码。System does not support 'big5' encoding.的更多相关文章

  1. 使用thinkphp连接sqlserver数据库时提示“系统不支持:sqlsrv”

    习惯了使用php跟mysql组合,现在接到项目需要调用客户线下的系统软件的数据,具了解,这个软件的数据库是用sqlserver数据库也就是常说的mssql数据库了. 那么我现在需要用PHP连接sqls ...

  2. 系统不支持curl

    解决安装pinphp时出现的“系统不支持curl!”   今天在本机安装phppin开源程序时,提示“系统不支持curl!”错误. 由于我本机是UBUNTU系统,所以直接通过apt-get进行安装. ...

  3. 虚拟机 VMware安装系统,提示此主机支持Intel VT-x,但Intel VT-x处于禁用状态

    VMware提示此主机支持Intel VT-x,但Intel VT-x处于禁用状态 VMware提示此主机支持Intel VT-x,但Intel VT-x处于禁用状态这是怎么回事呢? Intel VT ...

  4. CodePage------Encoding 类支持的编码以及与这些编码关联的代码页(CodePage)

    Encoding 类 .NET Framework 4  表示字符编码. 继承层次结构 System.Object  System.Text.Encoding    System.Text.ASCII ...

  5. 获取jdk支持的编码类型

    //获取jdk支持的编码类型 Map<String,Charset> maps = Charset.availableCharsets(); for(Map.Entry<String ...

  6. MySQL数据库在WINDOWS系统CMD下的编码问题

    MySQL数据库在WINDOWS系统CMD下的编码问题 1. 查看MySQL数据库编码 * SHOW VARIABLES LIKE 'char%'; 2. 编码解释 * character_set_c ...

  7. APS高级计划排程系统应该支持的企业应用场景

    APS高级计划排程系统应该支持的企业应用场景 面对工业4.0智能制造的挑战,很多企业希望能够引进APS高级计划排程系统,全自动的.快速的制定精细化的生产计划,准确的计算产线/设备上各种产品型号的加工顺 ...

  8. 让ubuntu支持GBK编码AAAAA

    Eclipse 添加GBK编码 首先Windows->Preferences, 然后选择General下面的Workspace. Text file encoding选择Other GBK, 如 ...

  9. libiconv 支持的编码

    libiconv 支持的编码 php 中的 iconv() 函数常用来作编码转换用.作一些不同编码的动态数据的转换时常遇到一些未知编码的数据,这时 iconv() 支持那些编码转换就很重要. 刚开始, ...

  10. 解决:WPS for Linux提示“系统缺失字体symbol、wingdings、wingdings 2、wingdings 3、webding”

    WPS for Linux提示“系统缺失字体symbol.wingdings.wingdings 2.wingdings 3.webding” 出现提示的原因是因为WPS for Linux没有自带以 ...

随机推荐

  1. Nginx 查看配置文件路径

    通过测试信息来间接查看 #测试nginx.conf是否正确 nginx -t #输入此命令,通常会输出如下信息 nginx: the configuration file /etc/nginx/ngi ...

  2. java学习-5-核心类:字符串StringBuilder

    对字符串进行拼接,用java标准库提供的可变对象:StringBuilder. StringBuilder sb = StringBuilder(1024); for (int i = 0;i < ...

  3. 20241106,LeetCode 每日一题,用 Go 实现整数回文数判断

    题目 给你一个整数 x ,如果 x 是一个回文整数,返回 true :否则,返回 false . 回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数.* 例如,121 是回文,而 123 不 ...

  4. react项目vite报错:UnhandledPromiseRejectionWarning: SyntaxError: Unexpected token '??='

    问题: vite报错:UnhandledPromiseRejectionWarning: SyntaxError: Unexpected token '??=' 今天clone一个vite的项目,安装 ...

  5. MySQL 8.0 修改密码 新建用的正确方式

    mysql 更新完密码,总是拒绝连接.登录失败?MySQL8.0 不能通过直接修改 mysql.user 表来更改密码.正确更改密码的方式备注: 清空root密码MySQL8.0 不能通过直接修改 m ...

  6. ASP.NET Core之Razor Page相关

    cshtml一般是这样: @page @model IndexModel @{ ViewData["Title"] = "Home page"; } <d ...

  7. 猫映射(Arnold变换),猫脸变换介绍与基于例题脚本的爆破

    前置信息 http://www.jiamisoft.com/blog/index.php/7249-erzhituxiangjiamisuanfaarnold.html https://mp.weix ...

  8. 循环神经网络(RNN)模型

    一.概述   循环神经网络(Recurrent Neural Network, RNN)是一种专门设计用于处理序列数据(如文本.语音.时间序列等)的神经网络模型.其核心思想是通过引入时间上的循环连接, ...

  9. @Transactional嵌套事务失效异常Transaction rolled back because it has been marked as rollback-only

    摘要:注解@Transactional嵌套事务失效,抛出异常ransaction rolled back because it has been marked as rollback-only,解决办 ...

  10. 【Spring Boot】ActiveMQ 连接池

            spring.activemq.pool.enabled=false时,每发送一条数据都需要创建一个连接,这样会出现频繁创建和销毁连接的场景.为了不踩这个坑,我们参考池化技术的思想,配 ...