質問編集履歴

2

タイトルの変更、補足の追加

2020/12/10 13:34

投稿

syoshinsya-
syoshinsya-

スコア21

test CHANGED
@@ -1 +1 @@
1
- Javaから起動したcmdの文字コード変更したい
1
+ exewrapでMain.jarをMain.exeに変換後、ダブルクリックで起動したときに日本語が文字化けするのしたい
test CHANGED
@@ -111,3 +111,19 @@
111
111
  ```
112
112
 
113
113
  でうまくいきます。
114
+
115
+
116
+
117
+ ###補足3
118
+
119
+ ソースコードに
120
+
121
+ ```Java
122
+
123
+ System.out.println(System.getProperty("file.encoding"));
124
+
125
+ ```
126
+
127
+ を追加して確認したところ、exeファイルから起動される画面の文字コードは「MS932」であることがわかりました。
128
+
129
+ そのためIntelliJの文字コードの設定を「windows-31j」に変更して再度ビルドしましたがやはり日本語は文字化けしたままでした。

1

補足のついか

2020/12/10 13:33

投稿

syoshinsya-
syoshinsya-

スコア21

test CHANGED
File without changes
test CHANGED
@@ -93,3 +93,21 @@
93
93
  exeに変換しないで直接jarをダウるクリックすると一瞬cmdの黒い画面が表示されるが、すぐに消えてしまうため動かない。(java.exeを使用)
94
94
 
95
95
  exeに変換するとcmdの黒い画面が表示され、日本語は文字化けしているが「あああ」や入力、「hi」を確認できる
96
+
97
+
98
+
99
+ ###補足2
100
+
101
+ Javaソースコードの文字コードは「UTF-8」です
102
+
103
+ IntelliJに頼らず、cmdからコンパイルをするときは
104
+
105
+ ```cmd
106
+
107
+ javac -encoding UTF-8 Main.java
108
+
109
+ jar cfm Main.jar Main Main.class
110
+
111
+ ```
112
+
113
+ でうまくいきます。