
以檔案為後端的網站框架
|
161
分隔字元
分隔字元在檔案中分隔欄位以及記錄。舉例來說,在一個以逗點分隔的檔案中,新行字
元將記錄分開,而逗點將欄位分開。
在一群問題中要挑選分隔字元遠比想像的要花費精力。我知道有個上線的系統使用四條
槓(
||||
)來分隔字串,藉此來避免修改資料庫綱要以及免除將現有資料修改以跳脫字
元的恐懼。
請對
http://xkcd.com/927/
致敬,ASCII 標準包含了幾乎不曾被使用的分隔字元。ASCII
30 是記錄分隔子,而 ASCII 31 是設計用來分隔欄位的。理論上,讀入這種資料的使用
者系統應該能夠很簡潔的將所有的內容以表格的方式對齊。實際上,就我所知根本沒有
一個使用者系統會支援這種分隔字元,更不用說作出一些對使用者好的事情了。
也許造成不被使用的最大原因是,因為這些分隔字元沒辦法使用鍵盤打出來。CSV 檔案
看起來很醜且不對齊的,但我們都能夠找到逗點這個按鍵。
你最好使用新行來分割記錄,並且使用跳格字元(tab)或是逗點來當作分隔字元。使用
雙引號以及反斜線來當成跳脫字元是很常見的,並且應該很容易在客製的系統中實作。
不管你做什麼,請盡量不要使用很怪的分隔字元。若有人因為「應該不會發生問題」而
推薦你使用
||||
,那麼請告訴他們,使用較常見的標準會較好。
最後,使用空白字元當成分隔字元很容易會造成問題,並且通常都很笨重。在一個越來
越國際化的世界中,空白字元本身已經無法運作。許多亞洲語言並不會使用空白字元來
分隔字元。也許這是個開始思考要使用古老標準的時候了。
以檔案為後端的網站框架 ...