cuốn sách gpt4 ai đã làm

Đọc tệp CSV trong java thêm khoảng trắng giữa mỗi ký tự

In lại Tác giả: Taklimakan Thời gian cập nhật: 2023-11-03 02:53:01 27 4
mua khóa gpt4 Nike

Tôi đang đọc tệp CSV được tải xuống từ google xu hướng và đây là nội dung của tệp khi được mở bằng notepad (chỉ hai dòng đầu tiên):

ferrari ferrari (lỗi tiêu chuẩn)
0,735 2%

Khi tôi đọc tệp bằng readline, các dòng đọc chứa khoảng trắng giữa mỗi ký tự, trong trường hợp trên, đầu ra là:

ferrariferrari ( stderror )
0 7 3 5 2 %

(Có các nhãn giữa "ferrari" và "ferrari" và từ 0,735 đến 2%, stackoverflow không hiển thị)

Các dòng mới ở cuối mỗi dòng cũng được đọc hai lần. Tại sao điều này lại xảy ra? Có giải pháp nào không?

Đây là mã tôi sử dụng để đọc tệp:

BufferedReader Reader = new BufferedReader(new FileReader("trend.csv"));
Dòng chuỗi = null;
while ((line = Reader.readLine()) != null)
System.out.println(line);

EDIT: Ngoài ra còn có một số ký tự lạ được đọc ở đầu tệp

Edut: Đã tìm ra giải pháp

Đó là vấn đề về mã hóa, hãy thay đổi dòng đầu tiên thành:

Trình đọc BufferedReader = BufferedReader mới(InputStreamReader mới(FileInputStream mới("trend.csv"), "UTF-16"));

câu trả lời hay nhất

Đó là sự cố mã hóa ký tự... Tôi vừa tải tệp xuống từ Trends và dùng thử nhưng tôi vẫn gặp vấn đề tương tự.

Nếu tôi sử dụng bộ ký tự UTF-16, tôi sẽ giải quyết được vấn đề này.

lớp công khai TrendReader
{
public static void main(String args[]) ném ngoại lệ
{
// Trình đọc BufferedReader = BufferedReader mới(FileReader mới("trends.csv"));
Trình đọc BufferedReader = BufferedReader mới(InputStreamReader mới(FileInputStream mới("trends.csv"), "UTF-16"));
Dòng chuỗi = null;
while ((line = Reader.readLine()) != null)
{
System.out.println(line);
}
}
}

Về java - Đọc tệp CSV trong java thêm khoảng trắng giữa mỗi ký tự, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/8737658/

27 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress