Tôi cần đọc một tệp từ hệ thống tệp và tải toàn bộ nội dung vào một chuỗi trong bộ điều khiển groovy, cách dễ nhất để làm điều đó là gì?Làm thế nào để đọc một tập tin trong Groovy thành một chuỗi?
Trả lời
String fileContents = new File('/path/to/file').text
Nếu bạn cần phải xác định mã hóa ký tự, sử dụng sau đây thay vì :
String fileContents = new File('/path/to/file').getText('UTF-8')
cách dễ nhất sẽ
có nghĩa là bạn chỉ có thể làm:
new File(filename).text
Một biến thể nhẹ ...
new File('/path/to/file').eachLine { line ->
println line
}
điều này không đọc nội dung tập tin vào một biến –
Đúng, nhưng nó vẫn là một thành ngữ hữu ích để nắm bắt "cho bản ghi". –
Con đường ngắn nhất thực sự là chỉ
String fileContents = new File('/path/to/file').text
nhưng trong trường hợp này bạn không có kiểm soát về cách các byte trong file được hiểu là ký tự. AFAIK groovy cố gắng đoán mã hóa ở đây bằng cách xem nội dung tệp.
Nếu bạn muốn có một nhân vật cụ thể mã hóa, bạn có thể chỉ định một tên charset với
String fileContents = new File('/path/to/file').getText('UTF-8')
Xem API docs on File.getText(String)
để tham khảo thêm.
+1 để giới thiệu phiên bản có tham số mã hóa. Đồng bằng 'someFile.text' không đưa ra dự đoán thông minh, nó chỉ sử dụng mã hóa mặc định nền tảng (thường là UTF-8 trên Linux hiện đại, nhưng giống như windows-1252 hoặc MacRoman trên Windows/Mac OS, trừ khi bạn đã ghi đè nó với '-Dfile.encoding = ...') –
- 1. Làm cách nào để chuyển đổi bộ sưu tập chuỗi Groovy thành một chuỗi chuỗi Java?
- 2. PowerShell: làm thế nào để đánh giá một chuỗi đọc từ một tập tin
- 3. Làm thế nào để đọc nội dung tập tin vào một biến trong một tập tin thực thi?
- 4. Đọc một tập tin văn bản và biến nó thành một chuỗi
- 5. Làm thế nào để đọc một Unicode G-Clef (U + 1D11E) từ một tập tin?
- 6. Làm thế nào để đọc các số từ một tập tin ASCII (C++)
- 7. SVN: Làm thế nào để làm cho một tập tin chỉ đọc với subversion?
- 8. làm thế nào để đọc một tập tin từ một webapp nâng
- 9. Làm thế nào để đọc tập tin tuần tự hadoop?
- 10. làm thế nào để đơn giản nhập vào một tập tin groovy trong một kịch bản hấp dẫn
- 11. Cách đọc nội dung tập tin từ một tập tin?
- 12. Làm thế nào tôi có thể đọc một 0xFF trong một tập tin với libC++ istream_iterator?
- 13. Làm thế nào để thêm một cột từ một tập tin vào một tập tin
- 14. Làm thế nào để tạo một chuỗi Ruby an toàn cho một hệ thống tập tin?
- 15. Làm thế nào đọc một tập tin vào một seq các dòng trong F #
- 16. Làm thế nào để đọc dữ liệu từ một tập tin trong Lua
- 17. Làm thế nào để đọc một tập tin vào vector trong C + +?
- 18. Làm thế nào để đọc một tập tin cấu hình trong Java
- 19. Bình: Làm thế nào để đọc một tập tin trong thư mục gốc của ứng dụng?
- 20. làm thế nào để đọc một tập tin csv theo thứ tự ngược trong python
- 21. Làm thế nào để mở một tập tin trong java
- 22. Đọc tập tin nhị phân thành một cấu trúc (C++)
- 23. Làm thế nào để làm cho ConfigurationManager đọc một tập tin cấu hình khác với app.config?
- 24. Đọc một tập tin * csproj trong C#
- 25. đọc một os.popen (lệnh) thành một chuỗi
- 26. Làm thế nào để tải tập tin một .properties thành một jsp
- 27. Làm thế nào để nhúng một tập tin vào một tập tin HTML?
- 28. jquery - Đọc một tập tin văn bản?
- 29. Làm thế nào để nối chuỗi trong một tập tin thực thi Windows?
- 30. Làm thế nào để đọc từ một tập tin văn bản nhanh hơn/thông minh hơn?
phải không? jeez, tôi cảm thấy như một thằng ngốc vì đã hỏi, cảm ơn – raffian
Đó là vẻ đẹp của Groovy :) – Igor
Tôi có phải thực hiện một số câu lệnh close() hoặc người đọc có được đóng bởi phương thức getText() không? –