🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Java

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

Q&A

解決済

3回答

1744閲覧

別ファイルから文字列を読み込み二次元配列に変換

kwkw7575

総合スコア12

Java

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

0グッド

0クリップ

投稿2019/11/01 04:53

データ1の内容を読み込み
char型の二次配列に変換したいのですがどうしてもうまくいきません。
どうすればいいでしょうか?
すみません全くわかないため教えていただきたいです。

###データ1

*s****** * * * * * ** * * * * * * * ** *** * ** * * * ******e*

こーどがこちらです

import java.io.*; class ko{ public static void main(String args[]){ try{ //ファイルの読み込み・存在するか確認。 File file = new File("maze.dat"); FileReader fileReader = new FileReader(file); BufferedReader bufferedReader = new BufferedReader(fileReader); //data にmaze.dataの表を代入 String data; char s[][] =new char[70][40]; while((data = bufferedReader.readLine())!=null){ } char[][] p = data.toCharArray(){ for(int i=0;i<9;i++) for(int j =0;j<9;j++) for(char s : p){ System.out.println(s); } } bufferedReader.close(); }catch(Exception e){ e.printStackTrace(); } } }

このようにエラーが出ます

C:\practice>javac ko.java ko.java:20: ';' がありません。 char[][] p = data.toCharArray(){ ^ ko.java:15: シンボルを解釈処理できません。 シンボル: クラス Char 位置 : ko の クラス Char data = (char)data; ^ ko.java:15: data は main(java.lang.String[]) で定義されています。 Char data = (char)data; ^ ko.java:15: 変換できない型 出現: java.lang.String 要求: char Char data = (char)data; ^ ko.java:20: 互換性のない型 出現: char[] 要求: char[][] char[][] p = data.toCharArray(){ ^ エラー 5 個

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

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

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

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

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

m.ts10806

2019/11/01 04:56

エラーの意味がわかってないと言うことでしょうか。そこまで珍しいエラーはないので調べればたくさん解決策はでてきますよ。構文ミスですし。
m.ts10806

2019/11/01 04:57

それにそもそもビルド通らないコードです。コードは何を使って打ってますか?
cateye

2019/11/01 05:00 編集

>ko.java:20: ';' がありません。・・・・そのとおりだと思いますが?・・・後ろの{は何でしょう?
kwkw7575

2019/11/01 05:05

ごめんなさい エラーの意味がよくわかっていないです。
tetutetu

2019/11/01 05:12

書かれている日本語をそのまま読むだけだと思うんですが。
tetutetu

2019/11/01 05:25 編集

そもそもこれ、質問文のコードと実際に実行している(コンパイルエラーになった)コード、同じものじゃないですよね。 問題が発生するのであれば、その問題が発生するコードを提示しなければ本来誰も回答できませんよ。 (今回のエラーならコメントされている方は皆様一瞬で修正できると思いますが)
m.ts10806

2019/11/01 05:43 編集

エラーの意味がわからないならタイトルや質問内容にそれを表さないと伝わることは少ないです。 それに何も調べてない丸投げの質問です。 世界で初めてあなたが出会う現象はまずないです。
guest

回答3

0

javaの文法的におかしい記述をしてるので解釈できないとコンパイラさんは言ってます
そこんところ、ホンマに合ってるのか見直してみましょう

その行でなにをしてるのか、なにをするのか説明できるでしょうか

で、たとえそこを修正しても、まともには動くコードには見えませんが。。

投稿2019/11/01 05:00

y_waiwai

総合スコア88040

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

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

0

ko.java:20: ';' がありません。

data.toCharArray() の後ろに ';' が必要です。
その次の '{' と対応する閉じ括弧 '}' は不要でしょう。

ko.java:15: シンボルを解釈処理できません。
ko.java:15: 変換できない型

添付したコードには該当する行が見当たりませんね。

ko.java:20: 互換性のない型

data.toCharArray() の戻りの型は char[] なので。 char[][] 型の変数には型不一致で代入できません。

出ているエラーの意味はそんなところです。

投稿2019/11/01 05:29

ironya

総合スコア456

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

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

kwkw7575

2019/11/04 15:55

教えていただきありがとうございました。 char[i]=data.toCharArray() で無事できました。
guest

0

ベストアンサー

エラーの意味がわからないということなので。

ko.java:20: ';' がありません。 char[][] p = data.toCharArray(){ ^

;で終わるべき文法なのに;がない場合という意味です。
toCharArray()の使い方を調べて文法を見比べてみてください。


ko.java:15: シンボルを解釈処理できません。 シンボル: クラス Char 位置 : ko の クラス Char data = (char)data; ^

Charというデータ型/クラスがないというエラーです。
Charという指定が合っているか確認しましょう。

(なんかエラーメッセージが古いのが気になります。)


ko.java:15: data は main(java.lang.String[]) で定義されています。 Char data = (char)data; ^

既に同メソッド内で宣言済みの変数名は再宣言できませんというエラーです。
(修正依頼のコメント見て気付きましたが、たしかにここと次のエラーは質問文のコードにないですね。)


ko.java:15: 変換できない型 出現: java.lang.String 要求: char Char data = (char)data; ^

Stringはcharに変換できないという意味です。
Stringは文字列でcharは文字1個なので当然ですね。


ko.java:20: 互換性のない型 出現: char[] 要求: char[][] char[][] p = data.toCharArray(){ ^

toCharArray()では文字列をchar配列にします。
char配列とはchar[]です。
参考ページ

投稿2019/11/01 05:18

編集2019/11/01 05:32
dice142

総合スコア5158

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

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

dice142

2019/11/01 05:38

ベストアンサーだけついたので本当に解決できたか疑問なんですが、 私の回答で解決できたならエラー文でググるか、使用しているクラスおよびメソッドの使い方を調べればほぼほぼ解決できます。 調べてもわからなければどう調べたのか、どのサイト・本等を見たのかを添えて質問すると良い質問になります。
kwkw7575

2019/11/04 16:04

ご親切に教えていただきありがとうございました。 今回の皆さんの回答を見まして自分なりにやってみ手できたんですが、なんとなくは理解したつもりですが、確実に理解した状態ではないので努力します。 この問題が解決した後もまた新たな問題にぶつかってしまってますが、徐々にでもできるようになることが目標なので頑張ります。 私なんかのためにお時間使っていただきありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.36%

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

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

質問する

関連した質問