はじめに
今回は、Javaの「ファイル操作」について勉強したことを記載していきたいと思います。
ファイルの作成
createNewFileメソッドを使用することで、ファイルを作成することができます。
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
File file = new File("test.csv");
if (file.createNewFile()) {
System.out.println("作成成功");
}
}
ディレクトリの作成
mkdirメソッドを使用することで、ディレクトリを作成することができます。
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
File file = new File("Test2");
if (file.mkdir()) {
System.out.println("作成成功");
}
}
ファイルの読み込み
1文字ずつ取得:FileReaderクラス
1行ずつ取得:BufferedReaderクラス
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
// 1文字ずつ取得する
try (FileReader reader = new FileReader("Test.txt")) {
int data;
while ((data = reader.read()) != -1) {
System.out.print((char) data);
}
}
// 1行ずつ取得する
try (BufferedReader reader = new BufferedReader(new InputStreamReader
(new FileInputStream("Test.txt"),"UTF-8"))) {
String line;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
}
}
ファイルへ出力
1文字ずつ書き込まれる:FileWriterクラス
まとめて書き込まれる:BufferedWriterクラス
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
// 1文字ずつ書き込み
try (FileWriter writer = new FileWriter("Test.txt",true)) {
writer.append("test");
writer.append("\n");
writer.flush();
}
// まとめて書き込み
try (BufferedWriter writer = new BufferedWriter(new OutputStreamWriter(
new FileOutputStream("Test.txt", true),"UTF-8"))) {
writer.append("test");
writer.append("test");
writer.newLine();
writer.flush();
}
}
ファイルの削除
deleteメソッドを使用することで、ファイル/ディレクトリを削除することができます。
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
File file = new File("test.txt");
if(file.delete()) {
// 存在する場合
System.out.println("削除成功");
}
}
存在チェック
existsメソッドを使用することでファイルやフォルダの存在チェックをすることができます。
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
File file = new File("test.txt");
if(file.exists()) {
// 存在する場合
}
}
ファイルサイズの確認
lengthメソッドでサイズの確認ができます。
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
File file = new File("test.txt");
System.out.println(file.length());
}
ファイルのパスを取得する
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
File file = new File("test.txt");
// 絶対パスの取得
System.out.println(file.getAbsolutePath());
// 親ディレクトリの取得
File dir = file.getAbsoluteFile();
System.out.println(dir.getParentFile());
}
ファイル一覧を取得
listFilesメソッドを使用することで、ディレクトリ内の全てのファイル/フォルダを取得することができます。
/**
* @param args
* @throws Exception
*/
public static void main(String[] args) throws Exception {
File dir = new File("test");
File[] fileList = dir.listFiles();
for (File file : fileList) {
System.out.println(file.getAbsolutePath());
}
}
ドキュメント
【公式ドキュメント】
Java SE Specifications (oracle.com)
最後に
Javaの環境構築は、この記事を参照してみてください。
【開発環境構築】VS CodeでJavaを使用するための環境構築を実施する – SEもりのLog (selifemorizo.com)
以上、ログになります。
これからも継続していきましょう!!
コメント