Ich versuche, einen Code zu schreiben, mit dem ich eine bestimmte Datei umbenennen (mit bekannten Namen und Verzeichnis) mit einer TXT-Datei, die eine Liste enthält Namen. Vor allem möchte ich eine Episode mit einer TXT-Datei umbenennen, die die Namen aller Episoden in dieser Saison hat.Benennen Sie eine bekannte Datei mit einer Liste von Zeichenfolge aus einer TXT-Datei
Dies ist der Code, den ich schrieb: Hauptklasse:
import java.io.IOException;
public class Main {
public static void main(String[ ] args) throws IOException {
String file_name = "C:/Users/home/Desktop/Friends season 2 titles.txt";
try {
ReadFile file = new ReadFile (file_name);
String[] arrLines = file.OpenFile();
int i;
/*for (i=0; i < arrLines.length; i++) { // perhaps i'll use this loop later on...
System.out.println(arrLines) ;
}
*/
RenameFile newFile = new RenameFile();
String file2_name = "C:/Users/home/Desktop/friends_s02e01_720p_bluray_sujaidr.mkv";
newFile.RenameSingleFile(arrLines[0], file2_name);
}
catch (IOException e) {
System.out.println(e.getMessage());
}
}
}
ReadFile- Klasse:
import java.io.IOException;
import java.io.FileReader;
import java.io.BufferedReader;
public class ReadFile {
private String path;
public ReadFile(String filePath){
path = filePath;
}
int readLines() throws IOException {
FileReader file_to_read = new FileReader(path);
BufferedReader bf = new BufferedReader(file_to_read);
@SuppressWarnings("unused")
String aLine;
int numOfLines = 0;
while ((aLine = bf.readLine()) != null){
numOfLines++;
}
bf.close();
return numOfLines;
}
public String[] OpenFile() throws IOException {
FileReader fr = new FileReader(path);
BufferedReader textReader = new BufferedReader(fr);
int numberOfLines = readLines();
String[] textData = new String[numberOfLines];
for (int i=0; i < numberOfLines; i++) {
textData = textReader.readLine();
}
textReader.close();
return textData;
}
}
RenameFile Klasse:
import java.io.File;
public class RenameFile {
public void RenameSingleFile(String file1_path, String file2_path){
File oldName = new File (file1_path);
File newName = new File (file2_path);
if(oldName.renameTo(newName)) {
System.out.println("The file has been renamed to: " +newName);
} else {
System.out.println("The file could not be renamed.");
}
}
}
Aus irgendeinem Grund, wenn ich laufe diese Programm bekomme ich diese Nachricht in der Konsole: "Die Datei konnte nicht re named. ", was bedeutet, dass etwas mit meiner RenameSingleFile-Methode (oder mit den Parametern file1_path und file2_path dieser Methode) nicht stimmt.
Ich weiß nicht, was mit diesem Stück Code falsch ist ...
Sie sollten beide Namen zusammen mit dieser Fehlermeldung ausgeben, um das Problem zu klären. –