処理中の tsv テキスト ファイルに含まれている無効な文字を置き換えようとしています。ファイル内の文字を置き換える必要があります。ファイルは非常に大きくなる可能性があるため、1 行ずつ処理しようとしています。
現在、ファイルを上書きして空白のままにしています。私はこれでいくつか間違ったことをしていることを知っていますが、どうすればいいのかわかりません。アドバイスをありがとう。
begin
Dir["#{@data_path}*.tsv"].each do |dir_file|
begin
File.open(dir_file, "w+") do |file|
file.lines.each do |line|
line.gsub(/\\t/, " ")
line.gsub(/\\/, " ")
line.gsub(/\(\"/, "(")
line.gsub(/\"\)/, ")")
end
end
rescue Exception => e
@log.warn("Unable to replace the bad characters because #{e.message}")
next
end
end
rescue
nil
end