これはばかげた質問のように思えるかもしれませんが、私にはできません。スキャナーを使用してファイルを読み取り、while ループを使用してテキストを文字列に入力し、それを JLabel に配置します。しかし、テキストは非常に長い横 1 行で表示されます。元のテキスト ファイルのように、すべてのテキストが段落のように正常に表示されるようにするにはどうすればよいですか? コード:
class howToPlay implements ActionListener{
@Override
public void actionPerformed(ActionEvent e) {
JFrame htp = new JFrame();
htp.setSize(300, 100);
htp.setLocationRelativeTo(null);
Scanner fileStream = null;
try {
fileStream = new Scanner(new File("text/howtoplay.txt"));
} catch (FileNotFoundException e1) {
System.out.println("File not found");
e1.printStackTrace();
}
String file = "";
while(fileStream.hasNextLine())file += fileStream.nextLine();
JLabel howToPlay = new JLabel(file);
htp.add(howToPlay);
htp.setVisible(true);
}
}
これはファイル内のテキストで、ゲームのプレイ方法のルールです。
ゲームの目的は、ピースがすべて 1 つの接続されたグループになるまで移動することです。対角線は接続されていると見なされます。ただし、従う必要がある特定の規則があります。
-白が最初に移動します -各ターン、移動するプレイヤーは自分の駒の1つを直線で、正確に同じ数の正方形に移動します -いずれかの色の駒が移動線に沿った任意の場所に移動します。(これらはアクションラインです)。・自分の駒を飛び越えてもよい。・相手の駒を飛び越えることはできませんが、着地することで捕獲できます。- 1人のプレーヤーがキャプチャによって1つのピースに減少した場合、それはキャプチャされたプレーヤーの勝利です. ・動いているプレイヤーと対戦相手の両方に同時に勝利がもたらされた場合、動いているプレイヤーが勝ちます。実際には、少なくとも理論的には可能である珍しいエンドゲームがかなりあります。
どんな助けでも大歓迎です。