文章目录
- 一、错误记录
- 二、解决方案
- 1、CMD 命令行终端临时设置
- 2、设置 Windows 全局 UTF-8
一、错误记录
Flutter 开发中 adb logcat 输出 Android 调试数据出现中文乱码 , 执行
adb logcat | findstr "flutter"命令 , 输出中文乱码 ;
D:\002_Project\001_Flutter\client_terminal\build\app\outputs\flutter-apk>adb logcat | findstr "flutter"
06-02 15:19:31.834 21913 21913 I flutter : [INFO] [FlutterApp] : 璐﹀彿: 235
06-02 15:19:31.834 21913 21913 I flutter : [INFO] [FlutterApp] : 瀵嗙爜: dfg
06-02 15:19:33.992 21913 21913 I flutter : [INFO] [FlutterApp] : 璐﹀彿: 235
06-02 15:19:33.992 21913 21913 I flutter : [INFO] [FlutterApp] : 瀵嗙爜: dfg
二、解决方案
Android 日志是 UTF-8 , 而 Windows CMD 默认是 GBK ( 代码页 936 ) ;
1、CMD 命令行终端临时设置
打开 CMD , 先切到 UTF-8 代码页 , 执行
chcp 65001命令 , 切换控制台为 UTF-8 , 只对当前窗口有效 , 新开 CMD 要重输 ;
切换完毕后 , CMD 命令行终端会进行重启 ;
再次执行 adb logcat | findstr "flutter" 命令 , 就可以正常显示中文 ;
D:\002_Project\001_Flutter\client_terminal\build\app\outputs\flutter-apk>adb logcat | findstr "flutter"
06-02 15:18:17.422 21913 21913 I flutter : [INFO] [FlutterApp] : 账号: 235
06-02 15:18:17.422 21913 21913 I flutter : [INFO] [FlutterApp] : 密码: dfg
06-02 15:18:17.931 21913 21913 I flutter : [INFO] [FlutterApp] : 账号: 235
06-02 15:18:17.931 21913 21913 I flutter : [INFO] [FlutterApp] : 密码: dfg
06-02 15:18:18.165 21913 21913 I flutter : [INFO] [FlutterApp] : 账号: 235
06-02 15:18:18.165 21913 21913 I flutter : [INFO] [FlutterApp] : 密码: dfg
如果切换后 , 中文变成方框 / 空白 , 右键 CMD 标题栏 → 属性 → 字体 → 选 Lucida Console 或 Consolas , 确定后重启窗口 ;

2、设置 Windows 全局 UTF-8
Windows 10/11 可全局开启 UTF-8 ( 会影响所有程序 ) :
- 控制面板 → 时间和语言
- 选择 " 语言 " 面板的 " 管理语言设置 " 选项 ;
- 选择 " 管理 " 面板中的 " 更改系统区域设置 " 选项 ;
- 勾选 “Beta: 使用 Unicode UTF-8 提供全球语言支持”




- 重启电脑 : 之后所有 CMD 窗口默认就是 UTF-8 , adb logcat 直接正常显示中文 ;
