FolderItem.ShellPath の日本語対応
# Xcode 2.2が出てますね。とりあえずインストールだけしてみましたが、メニューとかが日本語化されててありがたいです。
こないだ書いた REALbasic の FolderItem.ShellPath で日本語ファイル名(フォルダ名)がマズイ件は解決できたっぽいです。
すげぇベタなコードですが、こんな感じで。
Function ShellPath(f As FolderItem) As String Dim sp, s_hex, s_oct As String Dim i As Integer Dim c As TextConverter c = GetTextConverter(Encodings.UTF8, Encodings.UTF8) sp = f.ShellPath i = InStr(0, sp, "?") While i > 0 If Left(Mid(sp, i+1), 1) = "?" Then i = i+2 Else s_oct = Left(Mid(sp, i+1), 3) s_hex = "%"+Hex(Val("&o"+s_oct)) sp = sp.ReplaceAll("?"+s_oct, s_hex) End If i = InStr(i, sp, "?") Wend sp = c.Convert(DecodeURLComponent(sp)) Return sp
UTF8からUTF8にコンバートしてるのがポイントです。w
動作確認をちゃんとしてないので、ちょっと心配。特に Jaguar 以前とかの環境とか。