簡體   English   中英

如何防止UTF-8字符變成垃圾?

[英]How do I keep my UTF-8 characters from becoming junk?

我正在創建一個簡單的JavaScript多選游戲。 這是一個示例問題:

p ∧ q ≡ q ∧ p by which rule?

當我在localhost上運行它時,它可以正常工作,並打印出那些特殊字符。 但是,當我將其上傳到學校的服務器時,它會打印出垃圾:

p ∨ q ≡ q ∨ p by which rule? 

我在HTML的頂部有這個:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

我不能在作業中使用PHP,或者使用header('Content-Type: text/xml, charset=utf-8');

如果您願意,我可以提供一個鏈接...但是我不想這樣做,因為那樣每個人都可以看到我的糟糕教育游戲...

如何保留UTF-8字符?

編輯:我發現,如果我將FileFile我的文件上傳到服務器並從服務器下載它們,字符將變成小方塊。 我不知道這是否有用。

編輯:我發現,如果我將FileFile我的文件上傳到服務器並從服務器下載它們,字符將變成小方塊。 我不知道這是否有用。

是的,filezilla正在破壞您的傳輸文件。 確保filezilla以二進制形式傳輸文件,以確保文本在傳輸過程中不會損壞。 如果以ascii模式傳輸,它將嘗試修復換行符和無法識別的字符。

如果您不能輕松地修復HTTP標頭,請使用“字符轉義符”來避免問題。如果例如HTML內容中出現“∧”,請使用&#x2227; 為了它。 如果它出現在JavaScript字符串文字中,請使用\∧

要檢查其他字符的代碼,請訪問例如http://www.alanwood.net/unicode/mathematical_operators.html

如果可行,可以將問題復制並粘貼到記事本或任何其他可保存為UTF-8的應用程序中。

我認為您也可以使用正則表達式來標識十六進制值,並將其替換為在UTF8中可用的相應值。

另外,如果您使用特殊類型的字體,這可能會導致問題-問題是否以特定字體風格化? 一組后備? 您可能需要執行@ font-face導入,但我懷疑還有另一種選擇...使用您嘗試使用的符號,似乎LaTeX可能是一種選擇。.我相信對於javascript有一些選擇,字體等。

本文可能也很有用: http : //www.joelonsoftware.com/printerFriendly/articles/Unicode.html

暫無
暫無

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

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