簡體   English   中英

在 React JS 中編碼重音字符

[英]Encoding Accented Characters in React JS

用戶上傳帶有重音字符的 CSV 文件,例如 émily、ástha,我需要對其進行編碼並傳遞給后端。 我曾嘗試在type: 'text/plain'type: 'text/csv'之間更新FormData的文件類型。

const data = new FormData()
data.append('file', new Blob([params.file], { type: 'text/csv' }))

使用參數ISO-8859-1ISO-8859-4ISO-10646-UCS-Basic以及來自http://www.iana.org/assignments/character的其他幾個示例在FileReader的方法readAsText傳遞編碼-sets/character-sets.xhtml 不用說,嘗試了其他無用的方法readAsArrayBufferreadAsBinaryString

reader.readAsText(file, 'ISO-8859-4')

使用ISO-8859-1打印給我Žmily‡stha ,它們不夠接近。 我需要能夠接收確切的字符(后端使用ascii folding filter將它們轉換為 ascii)。

我依賴於如何編碼和解碼非 Ascii 字符? 作為最后的解決方案。

關於如何嘗試編碼非 ascii 字符的任何指示?

這可能與 csv 編碼問題有關 您可以先將字節順序標記(BOM)添加到 csv 內容,嘗試

const BOM = "\uFEFF"; 

new Blob([BOM + params.file], { type: 'text/csv;charset=utf-8' })

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM