FTP亂碼與DataBase亂碼問題整理

          Posted on 2007-11-21 08:43 久城 閱讀(1369) 評論(0)  編輯  收藏 所屬分類: 其他技術學習
           

          一.             FTP亂碼問題。

          1. 問題描述:

          在利用FTP服務器進行文件上傳的過程中,當上傳文件的實際文件名是西班牙文或中文的時候,出現了因文件亂碼而無法在FTP服務器上創建文件的問題。

          2. 問題調查

          環境:

          FTP服務器建立在DB服務器所在的機器上。

          Web服務器為編碼者自己的機器上。(日文操作系統)

          具體情況:

          當上傳文件的實際文件名為英文或者日文的時候,文件上傳正常。

          當上傳文件的實際文件名是中文或者西班牙文的時候,提示無法創建該文件:(錯誤消息中該文件的名字顯示為亂碼)。

          問題可能出現在由客戶端將文件上傳到FTP服務器上之后,文件名無法得到正確的解析,因而報錯。

          嘗試一:

          通過IE作為FTP客戶端,直接訪問FTP服務器端,成功進入后,試圖將文件名為ÁÚáúÉÜéüÍÑíñÓ¡ó¿.txt的文件直接拷貝到FTP服務器上。

          結果,拷貝失敗。

          嘗試二:

          以上測試,web服務器和FTP服務器分別在不同的機器上。

          現將web服務器和FTP服務器都創建在同一臺機器上。

          結果,上傳成功,沒有出現亂碼問題。

          3. 問題分析

          由于編碼者所用的機器與DB服務器所在的機器,其機器所擁有的字符集不一致,造成了在進行文件傳遞的過程中,文件名無法得到正確的解析,因此產生亂碼。

          如何確定和修改機器字符集的相關信息,還在調查過程中。

          二.             DataBase亂碼問題

          1.     問題描述

          當畫面中的入力項包含西班牙文時,入力到DataBase中的數據為亂碼,導致再次從DataBase中取數據顯示到畫面上時,顯示的數據依然是亂碼。

          2.     問題調查

          嘗試一:

          向數據庫中入力英文,保存并顯示,沒有問題。

          嘗試二:

          向數據庫中入力日文,保存并顯示,沒有問題。

          嘗試二:

          向數據庫中入力中文或者西班牙文,保存并顯示,出現亂碼

          例如:Ú->U

          亂碼的出現可能與數據庫的字符集設置有關。

          3.     調查分析

          查看數據庫字符集環境:
          select * from nls_database_parameters,其來源于props$,是表示數據庫的字符集。

          查看客戶端字符集環境:
          select * from nls_instance_parameters,其來源于v$parameter

          表示客戶端的字符集的設置,可能是參數文件,環境變量或者是注冊表,個人習慣修改注冊表中的NLS_LANG鍵值。

          客戶端的字符集要求與服務器一致,才能正確顯示數據庫的非Ascii字符。

          字符集要求一致,但是語言設置卻可以不同,語言設置建議用英文。如字符集是zhs16gbk,則nls_lang可以是American_America.zhs16gbk。



          歡迎來訪!^.^!
          本BLOG僅用于個人學習交流!
          目的在于記錄個人成長.
          所有文字均屬于個人理解.
          如有錯誤,望多多指教!不勝感激!

          Copyright © 久城

          主站蜘蛛池模板: 德保县| 吉隆县| 河西区| 江门市| 临沂市| 满城县| 含山县| 渝北区| 乌恰县| 永修县| 海阳市| 平阴县| 仙居县| 馆陶县| 卢湾区| 嘉定区| 元氏县| 综艺| 榕江县| 洱源县| 淅川县| 巨鹿县| 紫阳县| 腾冲县| 汤原县| 德钦县| 兴和县| 陆丰市| 承德市| 阳朔县| 白水县| 莱州市| 新津县| 栾城县| 丹东市| 常州市| 诏安县| 谷城县| 都昌县| 建湖县| 静乐县|