C# 控制台程序输出乱码

前面概要
  • 首先有几个问题
  • 因为项目需要,和一个控制台程序做链接,控制台那边会输出用户选择的图片路径。
  • 但是我发现如果图片路径是中文,就会乱码,报错
  • 结果只需要把编码全部设置成utf-8就可以了
  • 注意Console 输出为utf-8
csharp 复制代码
Console.OutputEncoding = Encoding.UTF8;
            using (OpenFileDialog openFileDialog = new OpenFileDialog())
            {
                openFileDialog.InitialDirectory = "c:\\"; // 设置初始目录为c盘
                openFileDialog.Filter = "图片文件(*.jpg;*.jpeg;*.png)|*.jpg;*.jpeg;*.png"; // 设置过滤选项,只显示图片文件
                openFileDialog.FilterIndex = 1;
                openFileDialog.RestoreDirectory = true;
                openFileDialog.Multiselect = true;
                if (openFileDialog.ShowDialog() == DialogResult.OK) // 显示对话框
                {
                    // 用户选择了文件
                    var resutl = string.Join("|", openFileDialog.FileNames);
                    Console.WriteLine(resutl); 
                }
            }
  • 启动信息也要设置成utf-8
csharp 复制代码
string filePathv = Application.dataPath + "/Other/SelectImage.exe";
        ProcessStartInfo startInfo = new ProcessStartInfo
        {
            FileName = filePathv,
            RedirectStandardOutput = true,
            UseShellExecute = false,
            CreateNoWindow = true,
            WindowStyle = ProcessWindowStyle.Hidden,
            StandardOutputEncoding = System.Text.Encoding.UTF8,
        };
相关推荐
luj_176828 分钟前
星火科技助力边远地区防病攻坚
c语言·开发语言·c++·经验分享·算法
always_TT34 分钟前
【Python 日志记录:logging 模块入门】
开发语言·python·php
建筑工程企业管理系统1 小时前
erp工程项目管理系统落地价值:实现工程多项目成本精细化核算与管控
大数据·数据库·人工智能
xcLeigh1 小时前
Go入门:变量声明的五种方式详解
java·开发语言·golang
AI大模型-小华1 小时前
Codex 三方充值快速入门指南
java·前端·数据库·chatgpt·ai编程·codex·chatgpt pro
zmzb01031 小时前
C++课后习题训练记录Day175
开发语言·c++
foolishlee2 小时前
Neon wal日志处理流程2
数据库
脱胎换骨-军哥2 小时前
C++ 代码规范与格式化指南
开发语言·c++·代码规范
枕星而眠3 小时前
C++ STL Map容器完全指南:从有序红黑树到无序哈希表
java·开发语言
2601_965798473 小时前
Is Hygia Good for Maid & Janitorial Sites? Technical Audit
服务器·网络·数据库