0
私は初心者プログラマーです。私は日食を使用しています。文字の間に余分なスペースを入れてファイルを1つのファイルから別のファイルにコピーする
:私は別のファイルから行ずつコピーして、これはソースファイルのサンプルコンテンツであるエンドの行と「D」の冒頭に「s」を追加するためにさまざまなソースからのコードをパッチを適用しました
Broccolini is like a baby version of broccoli.
これはよく動作しますが、文字は次のようにターゲットファイルに分離されています
"s" B r o c c o l i n i i s l i k e a b a b y v e r s i o n o f b r o c c o l i ."d"
私は私のようにそれを使用し、検索し、UTF-16は非常に指定しなければならないことに気づいた:これは私の完全なコードです...
BufferedReader brFileToCopyFrom = new BufferedReader(new InputStreamReader(fileToCopyFrom, "UTF-16"));
が、それはうまくいきませんでした:
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.PrintStream;
public class mainClass {
public static void main(String[] args) throws IOException {
File source = new File("C:\\Users\\ser\\Dropbox\\DataCollection\\LanguageModel\\SourceFile.txt");
File target = new File("C:\\Users\\ser\\Dropbox\\DataCollection\\LanguageModel\\emptyText.txt");
InputStream fileToCopyFrom= new FileInputStream ("C:\\Users\\alhanouf alnasser\\Dropbox\\DataCollection\\LanguageModel\\SourceFile.txt");
PrintStream fstream =new PrintStream(target);
BufferedReader brSource = new BufferedReader(new FileReader(source));
String lineSource;
String lineToCopy;
String TempLine;
if (!target.exists())
{
target.createNewFile();
System.out.println("a new file was created ooooops");
}
while((lineSource = brSource.readLine()) != null) {
TempLine="<s>"+ lineSource+"</s>";
BufferedReader brFileToCopyFrom = new BufferedReader(new InputStreamReader(fileToCopyFrom, "UTF-16"));
fstream.println(TempLine);
}
fileToCopyFrom.close();
}
}
すべてのスペースを削除しますか?ソースファイルはどのように見えますか? –
いいえ、私はそれがソースファイルのスペースと同じ間隔を持つようにします。私は質問にソースコンテンツを追加しました。 – alha
なぜたくさんの 'File'オブジェクトがありますか?確かに「in」と「out」で十分です。私は、エンコーディングが関連性があるとは思わない。簡略化した入力ファイルと出力ファイルを表示してください –