摘要:配合記事本的 BIG5 轉 UTF-8 工具原始碼
昨天為了安裝 phpBB2 的 attachment_mod 的中文化,花了許多時間,事實上,已有網友提供 attachment_mod 中文化檔案,不過,用的是 BIG5 碼,但 phpBB2 已設定使用 UTF-8 無法使用。
一開始,先用自己寫的 StatPlus 內碼轉換工具,可能是因為 BCB5 元件支援 UniCode/UTF-8 的能力不足,轉出來的有 ?? 再貼回去,還是無法使用。 最後,用記事本開啟相關 php 檔(請參考從無到有 phpBB2 + 檔案上傳 + 中文化 安裝)直接另存新檔,在另存新檔對話視窗中選擇編碼為 UTF-8,再存檔。 存完的檔案,其檔頭有 3 碼是告知編輯軟體此檔是使用 UTF-8 編碼的檔案,而這 3 碼,在 php 系統則是不允許的碼,會變成載不入。 (以上都是看 Apache 控制台內的 php error log 訊息得知的喔) 還是動手寫個程式吧:
- void __fastcall TForm1::Button1Click(TObject *Sender)
- {
- if(this->OpenDialog1->Execute())
- {
- TFileStream *Stream=new TFileStream(this->OpenDialog1->FileName,fmOpenRead);
- TFileStream *Output=new TFileStream(this->OpenDialog1->FileName+".u",fmCreate);
- Stream->Position=3;
- Output->CopyFrom(Stream,Stream->Size-3);
- delete Stream;
- delete Output;
- }
- }
void __fastcall TForm1::Button1Click(TObject *Sender)
{
if(this->OpenDialog1->Execute())
{
TFileStream *Stream=new TFileStream(this->OpenDialog1->FileName,fmOpenRead);
TFileStream *Output=new TFileStream(this->OpenDialog1->FileName+".u",fmCreate);
Stream->Position=3;
Output->CopyFrom(Stream,Stream->Size-3);
delete Stream;
delete Output;
}
}
這樣,就可以把記事本另存的 UTF-8 的檔案,再另存一份給 php 用。