質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Q&A

2回答

4103閲覧

VScodeのターミナルの文字化け

nanahoshi_0

総合スコア5

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

0グッド

0クリップ

投稿2020/04/23 07:55

前提・実現したいこと

日本語を表示したいだけなのですが,文字化けしてしまいます.
インターネットで調べて見つかる範囲の対処はしました.
いろいろ考えすぎて自分ではどうにもならなくなったので質問させていただくことにしました.

発生している問題・エラーメッセージ

あ�� い�� う��

該当のソースコード

Java

1class sample { 2 public static void main(String[] args){ 3 System.out.println("あ"); 4 System.out.println("い"); 5 System.out.println("う"); 6 } 7}

試したこと

エンコードの選択,chcp,その他いろいろやりました.

補足情報(FW/ツールのバージョンなど)

windows8.1

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

エディタとしてVSCodeを使われているようですが,VSCodeにJavaを実行するための拡張機能や設定は何をしたか教えてください.
また,JDKやVSCodeのバージョンもお願いします.

投稿2020/04/24 10:59

MeteorShower

総合スコア58

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nanahoshi_0

2020/04/27 05:27

拡張機能は java extension pack で,あとはJapanese Language Pack for Visual Studio Codeです. jdkのバージョンは11.7.0.10です.
guest

0

�はエンコードの際に,既定の文字コードでは対応がなかった際に現れます.

まず,SystemクラスのgetPropertyメソッドでデフォルトの文字コードを確認してはいかがでしょう?

Java

1public class Main { 2 public static void main(String[] args) { 3 4 System.out.println(System.getProperty("file.encoding")); 5 } 6}

それで,文字コードがターミナルに表示されれば,その文字コードとJavaファイルの文字コードが一致しているか確認してください.


これでも,解決しないようなら,printlnメソッドの改行コード(おそらく,CR+LF の\r\n)が何かしら反応しているのではないかと思われます.

試しに,以下のコードを入力した際には,どうなるか確認してみてください.

Java

1class sample { 2 public static void main(String[] args){ 3 System.out.print("あ"); 4 System.out.print("あ\n"); 5 System.out.println("あ"); 6 } 7}

投稿2020/04/23 09:29

編集2020/04/23 09:36
MeteorShower

総合スコア58

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nanahoshi_0

2020/04/23 14:31

文字コードはどちらもUTF-8でした.ターミナルの文字コードもUTF-8でした. また,実行結果は以下のようになりました. ------------------- あ��あ � あ�� -------------------
MeteorShower

2020/04/24 00:46 編集

Javaの実行環境は何でしょう? JDKを使っているのならエンコーディングの型指定をしているかどうか確認していただきたいです。 `javac -encoding UTF-8 Main.java` また、改行コードは「CR+LF」になってますか? VScodeだと、画面右下に「CR+LF」か「CR」、「LF」のどれかがあるはずです。
nanahoshi_0

2020/04/24 00:33

改行コードはCRLFとなっています. F5でデバッグ,実行したいのですが,その際の文字コード指定方法が分かりません. コマンドプロンプトからの実行では文字化けしませんでした. java debug consoleの文字コードがおかしいのかもしれないと思い, 以下のコードをsetting.jsonに追加したのですが,エラーとなって認識しませんでした. "terminal.integrated.shellArgs.windows": [ "-NoExit", "chcp", "65001" ]
MeteorShower

2020/04/24 00:47 編集

それでしたら、setting.jsonに、 { "java.home": "JDKのパスを入力", "java.jdt.ls.vmargs": "-noverify -Dfile.encoding=utf8 -Xmx1G -XX:+UseG1GC -XX:+UseStringDeduplication", "java.debug.settings.enableHotCodeReplace": true, } を追加して実行してみてください。
nanahoshi_0

2020/04/24 01:08

setting.jsonに追加し,実行したところ,特に変化はありませんでした…
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問