30/09/2018, 20:04

Xử dụng luồng ghi vào File

Xin mọi người cho em hỏi tại sao với đoạn mã dưới khi chạy xong em bật file len nó lại rỗng không ghi được ký tu a vào file ạ?

import java.io.FileNotFoundException;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;

public class TestLuongFile {

	public static void main(String[] args) {
		String a = "a b c d";
		try(PrintWriter writer  = new PrintWriter(new
		FileWriter("D:\Samsung\test.txt",true),true)
		){
			
			Thread t1 = new Thread() {
				public void run() {
			writer.println(a);
			
				}
				};
			t1.start();
		}catch(FileNotFoundException e){
		System.out.println(e.getMessage());
		}catch(IOException e){
		System.out.println(e.getMessage());
		}
	}

}

CÒn nếu em để writer.println(a); ngoài luồng thì lại ghi được ạ?

import java.io.FileNotFoundException;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;

public class TestLuongFile {

	public static void main(String[] args) {
		String a = "gsdfg";
		try(PrintWriter writer  = new PrintWriter(new
		FileWriter("D:\Samsung\datagsfdgfdgs21f.txt",true),true)
		){
			writer.println(a);
			Thread t1 = new Thread() {
				public void run() {
				}
				};
			t1.start();
		}catch(FileNotFoundException e){
		System.out.println(e.getMessage());
		}catch(IOException e){
		System.out.println(e.getMessage());
		}
	}
}

XIn mọi người chỉ dạy giúp em ạ.

Tobi the Terrible viết 22:18 ngày 30/09/2018

Mình chạy thử thấy cả 2 đều ghi được mà. Cơ mà bạn ghi xong thì nên writer.close() nhé

Bài liên quan
0