인코딩 테스트

This commit is contained in:
leedongmyung 2023-11-12 19:24:23 +09:00
parent 44baeb01be
commit 71a34378f1

View file

@ -3,6 +3,10 @@ import 'dart:io';
import 'dart:convert';
import 'dart:math';
import 'package:dart_framework/charset/euc_kr.dart';
import 'package:dart_framework/charset/euc_kr_table.dart';
import 'package:dart_framework/cp949.dart';
class ProcessData {
late Process process;
late File file;
@ -192,14 +196,17 @@ class ProcessExecutor {
file.writeAsStringSync(shell.toString());
await Process.run('cmd', ['/C', file.path],
workingDirectory: workspace,
stdoutEncoding: Encoding.getByName("euc-kr"))
stdoutEncoding: Encoding.getByName("euc-kr"),
stderrEncoding: Encoding.getByName("euc-kr"))
.then((ProcessResult result) {
processResult = result;
});
if (printStdout) {
List<int> out = processResult!.stdout;
List<int> err = processResult!.stderr;
print(
// ignore: prefer_interpolation_to_compose_strings
'[ProcessExecutor] Exit Code: ${processResult!.exitCode}, Result: ${processResult!.stdout}\nError: ${processResult!.stderr}');
'[ProcessExecutor] Exit Code: ${processResult!.exitCode}, Result: ${eucKr.decode(out)}\nError: ${eucKr.decode(err)}');
}
file.deleteSync();
c.complete(processResult);