私は削除する部分文字列を使用して、私は自分の名前にチェックしていたすべてのファイルを読んだ後、コードjavaの
import java.io.BufferedReader;
import java.io.File;
import java.io.IOException;
import java.io.InputStreamReader;
public class folderReader {
public static void main(String[] args) {
//Extension > .wav files
File folderWav = new File(
"/home/bassem/Desktop/LatestData3/Nemlar_RMC/nemlar_RMC");
File[] listOfWavs = folderWav.listFiles();
//Extension > .insent
File folderInsent = new File(
"/home/bassem/Desktop/LatestData3/outputInsent");
File[] listOfInsents = folderInsent.listFiles();
//Extension > .ctl
File folderCtl = new File("/home/bassem/Desktop/LatestData3/outputCtl");
File[] listOfCtls = folderCtl.listFiles();
for (File file : listOfWavs) {
for (File file2 : listOfInsents) {
for (File file3 : listOfCtls) {
if (file.isFile() && file2.isFile() && file3.isFile()) {
if ((file.getName().substring(0,
file.getName().length() - 4).equals(file3
.getName().substring(0,
file3.getName().length() - 4)))) {
if ((file2.getName().substring(0,
file2.getName().length() - 7).equals(file3
.getName().substring(0,
file3.getName().length() - 4)))) {
System.out.println(file3.getAbsolutePath());
}
}
}
}
}
}
}
}
で言及したパス内のすべてのファイルを読んでいますパス内のすべてのファイルを読み込み、そこにチェック(.ctl - .insent - .wav)もしそれらが等しければ、私はコードが動作していて何も印刷していないかどうかを確認するためにここに印刷経路を試みています。
私はこれを試してみました。それはすべてそれらを印刷しました。
for (File file : listOfWavs) {
for (File file2 : listOfInsents) {
if (file.isFile() && file2.isFile()) {
if ((file.getName().substring(0,
file.getName().length() - 4).equals(file2.getName()
.substring(0, file2.getName().length() - 7)))) {
System.out.println(file2.getAbsolutePath());
}
}
}
}
問題が発生するのは、私が3つのフォルダを一緒にチェックしているときに、コードを実行すると何もしないだけの空のコンソールです。
Oh god。 NIO.2 API(https://docs.oracle.com/javase/tutorial/essential/io/fileio.html)を使用してください。これはあなたが持っているあらゆる問題を解決するものです。これはJava 7です。 – Tunaki
@ Tunaki各ファイルの名前からいくつかの文字を削除するために.length()を適用することはできません。これと同等のものはPathクラスにないと思います。 – LSDrako
['Files.size'](https ://docs.oracle.com/javase/8/docs/api/java/nio/file/Files.html#size-java.nio.file.Path-)...実際、最新のAPIを使用していましたその負担を軽減するために書かれています。 – Tunaki