Đọc file code bằng java

Làm sao để đọc file source code của các ngôn ngữ như là file văn bản vậy moi người.

VD: read file java, cpp

Mở như file bình thường là được mà?

1 Like

mh mở thì nó báo nullpoiter, thử fie txt thì lại ok

Bạn up code Java + file cpp/java dùng để đọc lên đây xem nào.

2 Likes
public static List<String> getAllFunctions(File path)
    {
        List<String> list = new ArrayList<String>();
        List<String> contents = new ArrayList<String>();
        
        /// độc nội dung file java vào Collection
        BufferedReader bufferedReader = null;
        try 
        {
            bufferedReader = new BufferedReader(new FileReader(path));
            String thisLine = null;
            while( ( thisLine = bufferedReader.readLine() ) != null)
            {
                contents.add(thisLine);
            }
        } catch (Exception e) 
        {
            System.out.println(e.toString());
        }
        finally
        {
            try {
                bufferedReader.close();
            } catch (IOException ex) {
                Logger.getLogger(Function.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
        
        for(int i=0;i<contents.size();i++)
        {
            System.out.println(contents.get(i));
        }
        return null;    
    }

file.java

Bạn đã đảm bảo đúng đường dẫn file code được đọc chưa?

1 Like

Chắc chắn, mình có tạo 3 file cùng tên, 1 file txt và 1 file .cpp và 1 file java, thử thì chỉ có txt được

Liệu có phải bạn lấy code java rồi tự đọc chính nó? Hay file cpp bạn vẫn còn edit dở ở đâu đó?

1 Like

Đưa test case bị NullPointerException xem, cho function vậy sao biết đường nào mà lần.

2 Likes

Function.getAllFunctions(new File(url.getPath()));

Exception in thread "main" java.lang.NullPointerException
	at tuan10.main.main(main.java:20)
BUILD FAILED (total time: 0 seconds)

đây ạ,

không, mình tạo các file riêng hết

Ý mình là bạn đưa đoạn Java viết trên JUnit ấy.

Bạn đưa class mô phỏng trường hợp xảy ra NullPointerException, có setup method là bước tạo file cpp, có test method kiểm tra đọc file cpp thành công hay không?

Mình đang hướng dẫn để bạn đặt câu hỏi một cách chuyên nghiệp hơn.

2 Likes
public static void main(String[] args) 
{
    URL url = main.class.getResource("src.java");
    Function.getAllFunctions(new File(url.getPath()));
}

đây ạ

Tức là bạn để tất cả trong tập tin thực thi (*.jar) luôn à?

2 Likes

Không, nghĩa là có 1 package là folder, chứa tất các nội dung gồm: file source code, và file data (file code muốn đọc)

Thì khi dựng thì nó nằm tất trong (*.jar) hoặc (*.war).

Do không tìm thấy tập tin đó thôi.
Có lẽ bạn nên dùng ClassLoader.getResource() thì hay hơn.

4 Likes
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?