
現在Javaのプログラム課題を行っているものです。
前回こちらで質問させていただいたのですが、
解決に至らなかったので再度質問させていただきたいと思います。
前回の質問→ http://okwave.jp/qa4023470.html
こちらが修正後のプログラムの一部です。↓
package studyA;
import java.util.*;
import java.io.FileReader;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileWriter;
import java.io.BufferedWriter;
import java.io.FileNotFoundException;
import java.io.IOException;
public class A23_StrArray extends A22_StrArray
{
/**
* テキストファイルの読込み(上書きモード)
* @param path ファイルのパス
* @exception FileNotFoundException ファイルが見つからなかった場合
* IOException 入出力エラーが発生した場合
*/
// 修正として付け加えた部分(開始位置)
public class CheckClass check
{
check = new CheckClass();
check = path;
public boolean accept(path)
{
//拡張子がtxtであるかのの判定を行います。
String ext = getExtension(path);
if (ext != null && ext.equals("txt"))
{
return true;
}
}
}
//プログラム修正箇所 (終点)
public void readFile(String path) throws Exception
{
try
{
//BufferedReader in = new BufferdReader(new FileReader())
FileReader fr = new FileReader(path);//FileReaderのインスタンスを作成
BufferedReader br = new BufferedReader(fr);//BufferedReaderのインスタンスを作成
String line;
list.clear();//リストをクリア
while ((line = br.readLine()) != null)//要素がなくなるまで繰り返す
{
add(line);
}
System.out.println("ファイルを読み込みしました。");
br.close();
}
catch(FileNotFoundException e)//ファイルが見つからなかった時
{
System.out.println("ファイルが見つかりません。");
}
catch(IOException e)//入出力エラーが発生した場合
{
System.out.println("入出力エラーが発生しました。");
}
}
現在は、コンパイルエラーでC:\Java>javac A23_StrArray.java
A23_StrArray.java:28: '{' がありません。
public class CheckClass check
と表示されます。一体どのように修正を加えれば、
txtのみ読み込んで、上書きなどができるプログラムを作ることができるのでしょうか?
No.2ベストアンサー
- 回答日時:
> // 修正として付け加えた部分(開始位置)
> public class CheckClass check
> {
> check = new CheckClass();
> check = path;
> public boolean accept(path)
> {
> //拡張子がtxtであるかのの判定を行います。
> String ext = getExtension(path);
> if (ext != null && ext.equals("txt"))
> {
> return true;
> }
> }
> }
> //プログラム修正箇所 (終点)
この部分って インナークラスの定義なんですか?
それとも 拡張子チェックのロジック部分ですか?
インナークラスなら
> public class CheckClass check
の最後の check は変ですよね
ロジックにしても
> check = new CheckClass();
> check = path;
の部分で CheckClassをインスタンス化してから それにpathを代入して潰してるし ・・・
この回答への補足
申し訳ありません。
チェックロジック部分を組んだつもりなのですが、
あまりにもお粗末でしたね・・・
この様な場合はどのように式の構築をすればよいのでしょうか?
No.3
- 回答日時:
#1です。
コンパイル時のエラーについては先ほどおかしいと書いた部分の文法エラーの為ですね。
とりあえず拡張子のチェックをするだけならば、こんな感じでどうでしょうか?
1.今回のソースで「修正で付け加えた部分」の開始から終了までざっくり消す。
2.readFile()メソッドの中のFileReaderのインスタンス生成前にpath変数に含まれる拡張子をチェックする。
(以下のソースは動作確認はしていませんのでこんな感じでってことで)
public void readFile(String path) throws Exception
{
try
{
if (path != null && !path.endsWith(".txt"))
{
System.out.println("パスがおかしいか、拡張子が違うみたい");
return;
}
FileReader fr = new FileReader(path); //FileReaderのインスタンスを作成
(以降省略)
※ソースの前に全角空白が入っているのでそのままコピー&ペーストするとエラーになります。
迅速な回答ありがとうございました。
この様な分かりにくい問いにお答えくださった事に感謝いたします。
早速貼り付けて試して見ることにします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Java java 入力 3 4 3 出力 ABC DEFG HIJ このようなプログラムの書き方を教えてくだ 2 2022/07/15 14:18
- Ruby 【JAVA】数字をひし形に出力するプログラムについて 2 2022/07/11 23:32
- Java JavaのSingletonパターンのprivateの持つ意味が分かりません。 5 2022/06/12 10:38
- Java Java プログラム public class Main { public static void 3 2023/08/10 23:46
- C言語・C++・C# C# DatagridviewにExcelシートを反映するとエラーが出る 2 2023/05/06 17:12
- C言語・C++・C# C# で、あるフォルダー内にあるすべてのテキストファイルを別のフォルダーにコピーする。 4 2022/11/21 13:23
- C言語・C++・C# PC画面を録画するプログラムでdllの読み込みエラー 1 2023/04/22 08:31
- Java Java 配列<選挙> 4 2023/07/31 15:07
- Visual Basic(VBA) VBAでの共有パスにつきまして 1 2023/03/04 17:24
- Java 直し方について教えて頂きたいです。 4 2022/08/13 02:11
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
yyyymmddからyyyy/mm/d...
-
csv出力について
-
FileクラスのcanRead/canWrite...
-
Inputstreamについて
-
テキストファイルの任意の文字...
-
Javaの質問です。テキストファ...
-
getParameterで指定したファイ...
-
Javaの質問です。テキストファ...
-
javaのファイル読み込み時の文...
-
JAVAでエラーがでる。
-
linuxでapache poiが動かない。
-
InputStream.read()でタイムア...
-
[JAVA]エラーが解決できません。
-
javaで処理のやり方がわかりま...
-
JSPやサーブレットでSystem.out...
-
ORA-01858: 数値を指定する箇所...
-
動的配列が存在(要素が有る)か...
-
VBAで配列の計算
-
eclipseに記述したjavaファイル...
-
ダブルクォーテーションを含む...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
yyyymmddからyyyy/mm/d...
-
テキストファイルから空白行をよむ
-
csv出力について
-
InputStream.read()でタイムア...
-
Java int sum = 0は必要ですか?
-
FileクラスのcanRead/canWrite...
-
Class.forNameでエラーになる
-
BufferedReaderでのエラー
-
equalsの逆
-
Javaでデータに登録する度にID...
-
ProcessBuilderを使用して、対...
-
テキストファイルの任意の文字...
-
Javaの質問です。テキストファ...
-
JAVAでエラーがでる。
-
java連結
-
[JAVA]エラーが解決できません。
-
九九を横に表示する。
-
javaからffmpegの利用
-
Java FileDialog に関して
-
JavamailでGmailのお気に入りフ...
おすすめ情報