Рубрики
Без рубрики

Обработка файлов на Java

Обработка файлов на Java, файл Java, открытый файл Java, файл чтения java, файл удаления java, файл записи java, операции с файлами java, примеры программ с файлами java.

Автор оригинала: Pankaj Kumar.

Обработка файлов в java относится к операциям ввода-вывода. Пакет ввода-вывода Java java.io классы специально предназначены для обработки файлов в java.

Обработка файлов на Java

Некоторые из распространенных операций обработки файлов являются;

  1. Создать файл
  2. Удалить файл
  3. Прочитать файл
  4. Запись файла
  5. Изменение прав доступа к файлам

Давайте рассмотрим каждую из этих операций обработки файлов на примере java-программы.

Создать Файл

Мы можем использовать класс файла createNewFile() метод для создания нового файла. Этот метод возвращает значение true, если файл успешно создан, в противном случае он возвращает значение false. Ниже приведена простая программа, показывающая, как создать новый файл на java.

package com.journaldev.files;

import java.io.File;
import java.io.IOException;

public class FileHandling {

	public static void main(String[] args) {
		File file = new File("data.txt");
		try {
			boolean createNewFile = file.createNewFile();
			System.out.println("File Created = "+createNewFile);
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
}

На изображении выше показан результат, полученный при первом запуске, при последующем выполнении файл будет присутствовать, поэтому createNewFile вернет false.

Есть некоторые правила, связанные с абсолютным путем и относительным путем, читайте о них в разделе java создать новый файл .

Удалить Файл

Метод удаления класса файла используется для удаления файла или пустого каталога. Ниже приведен простой пример удаления файла.

package com.journaldev.files;

import java.io.File;

public class FileHandling {

	public static void main(String[] args) {
		File file = new File("data.txt");
		boolean delete = file.delete();
		System.out.println("File deleted = " + delete);
	}
}

Метод удаления файла возвращает значение true, если файл удален успешно, или возвращает значение false.

Дальнейшее чтение: Java удалить файл

Прочитать Файл

Существует множество способов чтения файла на java. Мы можем использовать класс BufferedReader, FileReader или Files. Ниже приведен фрагмент кода для чтения файла строка за строкой.

File file = new File("data.txt");
FileInputStream fis = new FileInputStream(file);
InputStreamReader isr = new InputStreamReader(fis, cs);
BufferedReader br = new BufferedReader(isr);

String line;
while((line = br.readLine()) != null){
    //process the line
    System.out.println(line);
}
br.close();

Для всех других способов чтения файла перейдите в раздел Файл чтения java .

Запись Файла

Мы можем использовать файловую машинку, буферизатор, Файлы или поток вывода файлов для записи файла на java. Ниже приведен фрагмент кода, использующий поток для записи данных в файл.

OutputStream os = null;
try {
    os = new FileOutputStream(new File("/Users/pankaj/os.txt"));
    os.write(data.getBytes(), 0, data.length());
} catch (IOException e) {
    e.printStackTrace();
}finally{
    try {
        os.close();
    } catch (IOException e) {
        e.printStackTrace();
    }
}

Полный пример с другими классами см. в разделе Запись java в файл .

Изменение Прав доступа к Файлам

Класс файла предоставляет методы для получения сведений о разрешениях на доступ к файлам, а также для их изменения. Ниже приведен фрагмент кода, в котором показано, как читать права доступа к файлам и изменять их.

File file = new File("/Users/pankaj/run.sh");

//check file permissions for application user
System.out.println("File is readable? "+file.canRead());
System.out.println("File is writable? "+file.canWrite());
System.out.println("File is executable? "+file.canExecute());

//change file permissions for application user only
file.setReadable(false);
file.setWritable(false);
file.setExecutable(false);

//change file permissions for other users also
file.setReadable(true, false);
file.setWritable(true, false);
file.setExecutable(true, true);

Однако, если вы используете Java 7 или более поздней версии, вам следует использовать PosixFilePermission , который предоставляет больше возможностей.

//using PosixFilePermission to set file permissions 777
Set perms = new HashSet();
//add owners permission
perms.add(PosixFilePermission.OWNER_READ);
perms.add(PosixFilePermission.OWNER_WRITE);
perms.add(PosixFilePermission.OWNER_EXECUTE);
//add group permissions
perms.add(PosixFilePermission.GROUP_READ);
perms.add(PosixFilePermission.GROUP_WRITE);
perms.add(PosixFilePermission.GROUP_EXECUTE);
//add others permissions
perms.add(PosixFilePermission.OTHERS_READ);
perms.add(PosixFilePermission.OTHERS_WRITE);
perms.add(PosixFilePermission.OTHERS_EXECUTE);

Files.setPosixFilePermissions(Paths.get("/Users/pankaj/run.sh"), perms);

Узнайте больше о PosixFilePermission

Это все об обработке файлов на java. Я надеюсь, что это поможет вам начать работу с файловыми операциями в программах Java.