分析のために、特定のテキスト ファイルのすべての文字 (スペースを含む) を 1 つの文字列にインポートするコードを作成しようとしています。このためにJavaで指定されたファイルを使用していますが、まとめているときに奇妙なエラーに遭遇しました。私はコーディングにまったく慣れていないので、明確にしていただければ幸いです。何が起こるかは、以下のコードで、設定すると
text.append(ch);
Default constructor cannot handle exception throws by X, must define explicit constructor; のエラーがあります。
そして、 text.append('ch'); を設定すると
上記のエラーはなくなり、私の 'ch' 行は無効な char const を与えるだけです。エラー、「」を削除することで修正できます。
だから私はJavaから与えられたもののために明示的なコンストラクタを構築しなければならないと思います.これは必要ですか? どうすればいいのかわからないので、回りくどい解決策があればいいのですが。
import java.io.FileInputStream;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.Reader;
import java.lang.StringBuilder;
public class TextReader //cannot place inputs/outputs of string on this line
{
StringBuilder text = new StringBuilder();
//StringBuilder google
//google end of file check java
InputStream in = new FileInputStream("charfile.txt");
Reader r = new InputStreamReader(in, "US-ASCII");
int intch;
{
while ((intch = r.read()) != -1)
{
char ch = (char) intch;
// ...
text.append(ch); //if I make this a 'ch', the errors above go away, what's the problem?
}
}
}