.Net Core 读取GB2312网页时乱码

C# 中使用GB2312或GBK编码报错 问题 使用 System.Text.Encoding.GetEncoding("GB2312"); System.Text.Encoding.GetEncoding("GBK"); 进行编解码的时候会报如下错误: ‘GBK’ is not a supported encoding name. For information on defining a custom encoding, see t... 阅读详情

今天 写爬虫的时候 发现读的网页代码中文部分全是乱码

具体报错:
‘GB2312’ is not a supported encoding name. For information on defining a custom encoding, see the documentation for the Encoding.RegisterProvider method.
Parameter name: name

看了下报错 提示的是不支持GB2312。而且提到了需要Encoding.RegisterProvider方法。
然后查了下 找到了解决的方法

  1. NuGet引入System.Text.Encoding.CodePages包
  2. Project.json中添加
    "dependencies": { “System.Text.Encoding.CodePages”: “4.0.1-rc2-24027” }
  3. 在项目中使用GB2312之前先加上一行
    Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
    如下图↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓
    在这里插入图片描述

然后又测了下 发现正常了
记录一下 以免以后遇到了不会解决

Unity脚本乱码终结指南:5种方法统一编码为UTF-8无BOM 在跨平台软件开发与团队协作中,文件编码不一致是导致乱码和编译错误的常见根源。其核心原理在于不同操作系统和编辑器对文本文件默认编码的解读不同,例如Windows常用带BOM的UTF-8或ANSI,而macOS/Linux则偏好无BOM的UTF-8。统一使用UTF-8无BOM编码具有重要技术价值,它不仅能消除因编码差异导致的乱码问题,还能避免编译器警告、构建工具兼容性风险以及版本控制系统中的噪音提交。这一实践在游戏开发、尤其是使用Unity引擎的项目中尤为重要,因为C#脚本、Shader和配置文件中的中文注释或 阅读详情

相关推荐

Python编码错误SyntaxError: Non-UTF-8 code starting with ‘\xa1‘ 的全面解析与解决方案

字符编码是计算机存储和处理文本的基础,它定义了字符与二进制数据之间的映射关系。在Python开发中,UTF-8作为国际通用标准,因其兼容性和跨平台性成为默认编码。然而,当文件的实际编码(如Windows系统常见的GBK)与Python解释器预期的UTF-8编码不匹配时,就会引发SyntaxError: Non-UTF-8 code错误,其本质是编码声明与文件实际编码不一致。这类问题在涉及中文注释或字符串时尤为常见,是Python新手在Windows环境下的典型入门障碍。理解编码原理后,开发者可以通过检查编辑

ciqiaofu0192的博客 371

.NET Core中使用编码GB2312报错:‘GB2312‘ is not a supported encoding name 的解决方案

#事故现场 在.Net Core中使用XElement解析GB2312编码的xml文件, 代码如下: string xmlp = "G:\\test\\content.xml"; XElement xe = XElement.Load(xmlp); var tittle = xe.Element("TITLE").Value.Trim(); var author = xe.Element("AUTHOR").Value.Trim(); 报错如下: ‘GB2312’ is not a supported.

willingtolove的博客 5598

Node.js Buffer 核心原理:字节思维与零拷贝实践

Buffer 是 Node.js 中处理二进制数据的基础抽象,本质是 V8 堆外分配的原始字节序列,区别于字符串(UTF-16 文本容器)和 ArrayBuffer(标准内存块)。其核心价值在于支持零拷贝 I/O、结构化读写(如 readUInt16BE)及确定性内存管理。技术上,Buffer 继承自 Uint8Array 但具备堆外分配、I/O 直写、全局兼容等运行时特权;工程中需规避 toString('utf8') 解码二进制、误用 allocUnsafe 导致数据残留、slice() 共享内存引发意

weixin_34080951的博客 468

.Net Core报“‘GB2312‘ is not a supported encoding name. For information on defining a custom encod”的错误

然后在var bytes = Encoding.GetEncoding("GB2312").GetBytes(strTemp);之前注册对编码进行注册:​Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);.Net Core报“‘GB2312‘ is not a supported encoding name. For information on defining a custom encod”的错误。

JMC13872389621的博客 1977

【16】linux命令/工具,systemd,文件操作,动静态库,信号,socket

apt install python3-pip --fix-missing(断开vpn,cp /etc/apt/sources.list /etc/apt/sources.list.bak,python3 -m pip install --upgrade pip,apt-get update,pip install 包名 -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com)设置时间,联网,apt-get install vim。

持续更新ing... 6788

C#网络爬虫实战:从架构设计到反爬策略的完整指南

网络爬虫作为数据采集的核心技术,其原理是通过模拟浏览器行为自动抓取网页信息。在.NET生态中,C#凭借其强大的异步编程模型和类型安全特性,成为构建高性能爬虫的理想选择。通过HttpClient实现高效网络请求,结合HtmlAgilityPack进行精准的HTML解析,可以构建出结构清晰、易于维护的爬虫系统。在工程实践中,模块化设计、异步并发控制和资源管理是关键,这能有效提升爬虫的稳定性和可扩展性。面对反爬机制,需要掌握User-Agent轮换、请求延迟和代理IP等策略,确保爬虫的长期稳定运行。本文以C#爬虫

weixin_30536861的博客 627

【.Net Core】.NET Core中使用编码GB2312报错‘GB2312‘ is not a supported encoding name解决方案

前言 今天在.Net Core中对外网新闻进行爬虫抓取,最初抓取到的新闻中出现了乱码,后来通过GB2312进行了编码,结果报错“Unhandled Exception: System.ArgumentException: 'GB2312' is not a supported encoding name. For information on defining a custom encoding, see the documentation for the Encoding.RegisterProvi.

光影8号的专栏 1万+

C# WinForm桌面爬虫开发:从HttpClient异步请求到HtmlAgilityPack数据解析实战

网络爬虫技术是自动化获取互联网公开信息的关键手段,其核心原理是通过程序模拟浏览器发送HTTP请求,并解析返回的HTML或JSON数据。这项技术的价值在于能够将人工重复、低效的信息搜集工作自动化,显著提升数据获取与处理的效率。在数据监控、市场调研、学术研究等场景中,爬虫技术发挥着重要作用。本文聚焦于使用C# WinForm框架快速构建一个桌面端爬虫应用,详细阐述了如何利用HttpClient进行高效的异步网络请求,以及如何通过HtmlAgilityPack库精准解析和提取网页中的结构化数据,为开发者提供一个即

weixin_33417488的博客 248

Asp.net core中由于页面编码导致的中文乱码

原文:Asp.net core中由于页面编码导致的中文乱码问题描述 最近使用asp.net core写了一个简单的网站,在windows系统下完全没有出现问题。后来在linux系统中搭建了docker,并且在linux中自动使用git获取源码,编译,部署一条龙自动化。结果发现一个奇怪的现象:在控制器的代码中赋值中文给view model,页面显示正常。但如果是在view model中定义中文,页...

weixin_34174422的博客 1543

C# WinForm桌面爬虫开发指南:从HttpClient到HtmlAgilityPack实战

网络爬虫(Web Crawler)是一种自动化程序,通过模拟浏览器行为从互联网上抓取和提取数据。其核心原理是发送HTTP请求获取网页内容,然后解析HTML或JSON结构以提取目标信息。这项技术对于数据采集、市场分析和信息聚合具有重要价值,广泛应用于价格监控、舆情分析和竞品研究等场景。在工程实践中,开发者常需将爬虫能力封装为易用的桌面应用(GUI),以提升非技术用户的操作效率。本文聚焦于使用C# WinForm框架,结合HttpClient库进行网络请求,并利用HtmlAgilityPack解析HTML文档,

weixin_29973493的博客 332

ASP聊天室源码实战:轻量实时系统部署与二次开发

ASP(Active Server Pages)作为经典服务端脚本技术,虽被现代框架边缘化,但其无依赖、低资源、强可控的特性,在政务内网、老年友好型应用、教育医疗封闭环境等场景中仍具不可替代价值。其核心原理是基于HTTP轮询的轻量实时通信机制,配合Access数据库的文件级操作与VBScript逻辑编排,实现极简部署与快速维护。技术价值体现在零编译运行、分钟级上线、管理员可直接修改配置与敏感词库,大幅降低运维门槛。典型应用场景包括县级文化馆交流平台、戏曲爱好者社区、中小学校内通知系统等对可用性要求高、对复杂

weixin_30294295的博客 489

C# Base64编码解码原理、实战技巧与性能优化全解析

Base64编码是一种将二进制数据转换为ASCII文本字符的编码方案,其核心原理是将每3个字节(24位)的数据映射为4个可打印字符。这项技术的主要价值在于确保二进制数据能够安全地通过仅支持文本的协议(如HTTP、JSON、XML)进行传输和存储,避免了因控制字符引起的错误。在软件开发中,Base64广泛应用于网络数据传输、图片内嵌(Data URL)、配置文件存储以及作为加密算法输出结果的包装格式。本文聚焦于C#语言环境,深入探讨了Base64的编码原理、填充机制,并详细解析了.NET中System.Con

weixin_30252709的博客 386

pytorch超详细安装教程,Anaconda、PyTorch和PyCharm整套安装流程

本文介绍基于Anaconda环境以及与PyCharm结合,安装PyTorch深度学习框架。

Bluebro的博客 19万+

HTML+CSS网站项目从零搭建:可运行、可验证、可交付的最小启动流程

HTML和CSS是构建静态网站的基石技术,其核心在于理解浏览器如何解析文档结构与样式规则。HTML定义语义化内容框架,CSS控制视觉呈现与布局逻辑,二者协同依赖严格的语法规范、正确的文件编码(UTF-8无BOM)、精准的路径引用及标准化的元信息声明(如<!doctype html>和<meta charset>)。这一组合不仅支撑基础网页渲染,更构成前端工程可信启动的前提——确保跨浏览器、跨设备的一致性表现。实际应用中,它广泛用于学生作品集搭建、设计师原型实现、企业内部静态页部署等轻量级场景。本文聚焦真实开

chupu2979的博客 403

IMU卡尔曼滤波方法详细介绍

本文介绍了基于IMU和卡尔曼滤波的状态估计方法。系统采用9维状态向量(位置、速度、加速度计零偏),通过牛顿运动学建立状态方程,并利用外部位置观测进行校正。详细推导了状态转移矩阵和控制输入矩阵的形式,阐述了预测和更新的计算步骤。同时说明了过程噪声Q和观测噪声R的设置原则,其中Q反映模型不确定性,R取决于传感器精度。该方法可有效融合IMU测量与外部观测数据,实现位置、速度和偏置的联合估计。

haing2019的博客 757

LibreNMS实战:5分钟搞定Docker部署与中文配置(附常见问题排查)

本文详细介绍了如何使用Docker在5分钟内快速部署LibreNMS,并完成中文界面优化。从环境准备到容器启动,再到中文语言包安装和系统配置调整,提供了完整的实战指南。同时,文章还包含常见问题排查和性能调优建议,帮助用户高效搭建网络监控系统。

e1f2g的博客 1281

linux 文本编辑器:vi、vim、实用技巧、vimplus、插件管理器vundle、Nano编辑器

Vim / Vi 是一个功能强大的全屏幕文本编辑器。vim ( Vi IMproved ) 是 vi的一个加强版,主要用来 "创建、编辑、显示" 文本文件。现在主流的 linux 都会安装 vim 文本编辑器。Vim/Vi 没有菜单,只有命令。linux 下还有另外2个强大的编辑器 Emacs、Nano。

freeking101的博客 4万+

【阿里云大模型高级工程师ACP学习笔记】2.8 部署模型

【摘要】本文主要分享自学阿里云大模型高级工程师 ACP 认证中《2.8 部署模型》的学习笔记。详细介绍学习目标、梳理涵盖的知识点并评估其重要性和难易度,对既重要又困难的知识点进行重点分析,旨在为对阿里云大模型学习和认证感兴趣的读者提供学习思路和经验参考。

davidkorhenn的博客 2060

工作中使用到的单词(软件开发)

1.エイリアス   alias 别名 powershell使用 get-help 命令时,会得到与此命令 相关(别名)的命令 2.プロキシ proxy 代 理 3.プロモート   promote 促进,提升   开发的系统新功能上线发布,有时会使用到这个词,比如 STプロモート 还有使用リリース这个词的。比如STリリース。个人认为两者含义相同。 4.見逃し み................................................................

sun0322 6万+

宝塔面板磁盘扩容后不生效?5步搞定Linux服务器磁盘空间更新(附详细命令)

本文详细解析了Linux服务器磁盘扩容后宝塔面板显示不生效的常见问题。通过理解磁盘、分区、文件系统三层逻辑,提供5步解决方案:检查磁盘状态、安装growpart工具、扩展分区、使用resize2fs命令扩展文件系统,并最终验证结果。文中附有详细命令和针对XFS、LVM等进阶场景的指南,帮助用户彻底解决磁盘空间更新问题。

weixin_29271263的博客 127

外骨骼机器人(五):步态分析之正常步态

研究病理步态之前,需要了解正常步态,作为判断标准。但是需要记住两个问题:1.“正常”因人而异,性别、年龄、身体情况都需要考虑在内,因此,需要对不同的个体选择合适的正常标准;2.即使病人的步态与正常步态有某种不同,这也不能说明这是不可取的,也不能说明应该把它变成“正常”步态。许多步态异常是对病人的一些问题的一种补偿,尽管异常,但它们仍然是有用的。步态周期的定义是连续为两次发生重复行走事件之间的时间间隔。尽管可以选择任何事件来定义步态周期,但通常使用一只脚接触地面的瞬间(“初始接触”)是方便的。

行者无疆的博客 1993

工作中使用到的单词(软件开发)_第三版

====

sun0322 1万+

打脸来的太快了,又发现一个Trae的宝藏功能--内置浏览器可以指定机型来显示前端界面

今天给大家分享一个Trae的实用功能,就是SOLO模式下内置浏览器可以指定不同的手机、平板机型来查看前端页面显示效果,我感觉这个功能很棒,忍不住就跟大家分享一下。

cpp加油站的专栏 6564

.net core中使用编码的问题

.net core中使用编码的问题

csdn_aspnet的专栏,请点击博客主页右上角三个点中的私信联系 2032

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

上一篇: IIS 配置多域名 多网站时证书错误问题
下一篇: Unity 模仿飞翔的小鸟(1)实现背景移动切换
若风华浊世间
博客等级 码龄11年 74粉丝 66原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

若风华浊世间

欢迎指点 ! (*^_^*)

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值