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
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à?
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.
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?
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 đó?
Đưa test case bị NullPointerException xem, cho function vậy sao biết đường nào mà lần.
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.
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 à?
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.