У меня есть назначение для моего класса Java, который просит меня объединить два текстовых файла.Java, объединяющий два текстовых файла
Это код, который у меня есть до сих пор.
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
public class CombineTwoFile {
public static void main(String[] args) throws IOException
{
ArrayList<String> list = new ArrayList<String>();
try
{
BufferedReader br = new BufferedReader(new FileReader("A.txt"));
BufferedReader r = new BufferedReader(new FileReader("B.txt"));
String s1 =null;
String s2 = null;
while ((s1 = br.readLine()) != null)
{
list.add(s1);
}
while((s2 = r.readLine()) != null)
{
list.add(s2);
}
}
catch (IOException e)
{
e.printStackTrace();
}
BufferedWriter writer=null;
writer = new BufferedWriter(new FileWriter("B.txt"));
String listWord;
for (int i = 0; i< list.size(); i++)
{
listWord = list.get(i);
writer.write(listWord);
writer.write("\n");
}
System.out.println("completed");
writer.close();
}
}
Теперь, когда я скомпилирую его, я получаю это сообщение.
java.io.FileNotFoundException: A.txt (No such file or directory)
at java.io.FileInputStream.open(Native Method)
at java.io.FileInputStream.<init>(FileInputStream.java:120)
at java.io.FileInputStream.<init>(FileInputStream.java:79)
at java.io.FileReader.<init>(FileReader.java:41)
at CombineTwoFile.main(CombineTwoFile.java:15)
completed
Я использую Coderunner на компьютере Apple, и я думал, возможно, писать текстовые файлы как «C: /Users/dell/Desktop/Test/input1.txt» может решить эту проблему, однако я не уверен в как написать это, чтобы соответствовать моему жесткому диску. Спасибо, что посмотрели, и я ценю любую помощь.
Вам нужен полный путь к вашим файлам. 'new FileReader (« A.txt »)' попытается прочитать файлы из вашего пути к классам. –
Файл 'A.txt' либо не существует, либо находится в неправильном месте. Вы можете найти, куда положить файл, выполнив регистрацию следующего значения: 'new File (« A.txt »). GetCanonicalPath()'. –
Просто добавьте файл A.txt в каталог и внутри нового FileReader («A.txt»)) вместо передачи только «A.txt», передайте в качестве аргумента полный путь к файлу A.txt. Пример, если вы поместите файл A.txt в папку temp на диске C. вы пройдете в качестве аргумента C: \\ temp \\ A.txt. – HaroldSer