Tôi đã xem các bài viết liên quan đến mã hóa ruby / mã hóa khác nhưng không thể tìm ra lý do tại sao những điều sau không hoạt động. Có khả năng chỉ vì tôi dày đặc, nhưng đây là tình huống.Vấn đề mã hóa chuỗi Ruby
Sử dụng Ruby 1.9 trên cửa sổ. Tôi có một tập hợp các tệp CSV cần một số dữ liệu được thêm vào cuối mỗi dòng. Bất cứ khi nào tôi chạy kịch bản của tôi, các ký tự nối thêm là vô nghĩa. Văn bản đầu vào dường như là mã hóa IBM437, trong khi chuỗi của tôi, tôi đang thêm phần bắt đầu dưới dạng US-ASCII. Không có gì tôi đã cố gắng đối với việc buộc mã hóa trên các chuỗi đầu vào hoặc chuỗi nối thêm dường như thay đổi kết quả đầu ra. Tôi bối rối. Phiên bản mã hóa hiện tại chỉ đơn giản là phiên bản cuối cùng mà tôi đã thử.
def append_salesperson(txt, salesperson)
if txt.length > 2
return txt.chomp.force_encoding('US-ASCII') + %(, "", "", "#{salesperson}")
end
end
salespeople = Hash[
"fname", "Record Manager"]
outfile = File.open("ActData.csv", "w:US-ASCII")
salespeople.each do | filename, recordManager |
infile = File.open("#{filename}.txt")
infile.each do |line|
outfile.puts append_salesperson(line, recordManager)
end
infile.close
end
outfile.close
Bạn có đang sử dụng nhận xét ma thuật mã hóa trong tập lệnh của mình không? – kch