• ベストアンサー

Linuxのフォルダ名に利用できる言葉

こんにちは。 任意の文字列をフォルダ名にする必要があります。ヒンドゥー語や、韓国語などできるだけ制限をかけずに可能な限り作成できるようにしたいと思っています。文字コードはUTF-8です。 どの辺りから調べれば、理解して実装することができそうでしょうか?また、利用不可な文字を事前に防ぐにはどのような方法がありますでしょうか?ヒントになることがあれば教えていただけると助かります。

質問者が選んだベストアンサー

  • ベストアンサー
  • localica
  • ベストアンサー率52% (202/385)
回答No.1

>どの辺りから調べれば、理解して実装することができそうでしょうか? コンピュータの基礎、文字コード、UTF-8を理解すれば分かると思います。 何をどう実装したいのかよく分かりませんが、2進法で割り当てられたコードに対応したフォント(単純に言えばビットマップ画像)を表示しているだけです。 同じ文字コードでもロケールが日本と韓国では表示され文字(フォント)が違うことは理解されてますよね。 その同じ文字コードに対して日本語、韓国語のどちらを表示するのでしょうか。 >利用不可な文字を事前 簡単に考えれば、割り当てられていない文字コードをどのような環境でも表示きる画像に置き換えてしまうことです。「?」とか「・」「 」(ヌル)とか >ヒントになること ターミナルからアクセスする場合はターミナルに実装されているロケールによりフォントの変更が出来ますよね。 OSレベルでフォルダ名の表記を変更することは馬鹿げていると思います。 アプリケーションレベルのビューワーを実装すればよいだけでは? フォルダ名は数桁の数字にして、それに対応するロゴ画像みたいなのを用意しておけば仕様を満たせるのではありませんか。 素人のような回答ですがご容赦下さい。

tricleore
質問者

お礼

ご回答ありがとうございます。 遅い返信になってしまい申し訳ございませんでした。 ご回答内容を拝見させていただき、いろいろ学ぶところがありました。素人とはとんでもない。私こそ素人です。 まだ不安はありますが、教えていただいたことを皮切りに動きながら考えてみたいと思います。

関連するQ&A

  • 【フォルダ名の文字コードを変換したい】

    【フォルダ名の文字コードを変換したい】 Windows Vistaです。 Windowsではフォルダ名にShift-JISを使っていますが、とあるプログラムが日本語を読み込む際、文字コードがUTF-8でないと読み込めないようで、フォルダ名に日本語を含むフォルダを参照すると文字化けしてしまいます。 なのでフォルダ名をUTF-8に変換したいです。 検索するとLinux上でShift-JISのフォルダ名をUTF-8にしたり、Windows上でもファイルの内容をShift-JISからUTF-8に変換したりする方法は見つかるのですが、Windows上でフォルダ名をUTF-8に変換する方法が見つかりません。 UTF-8に変換するとエクスプローラ上では文字化けするので、需要がないのでしょうか。 コマンドプロンプトとか苦手なので、何かフリーソフトでもあればいいのですが…

  • ダイアログでフォルダ名を取得したい。

    VC++6 で簡単なプログラムを作成しており、その入力として、ダイアログで任意のフォルダパスをユーザに指定させます。 ここで、Win32 API の GetOpenFilename() は、ユーザにフォルダを指定させることができるでしょうか? 色々組んではみたのですが、上記関数ではどうしてもフォルダの指定ができなかったため、フリーで簡単ライブラリと評判の(?) http://www.fox-toolkit.org/ FOX Toolkit を試してはいます。 一応それなりに FXFileDialog::getOpenDirectory() は動作してくれるのですが、パスの中に日本語があると、返却される文字列がおかしくなります。これはどうも UTF-8 でエンコーディングされているようで、自前で UTF-16 に変換し更に wcstombs() などを使用して Shift_JIS (Windows-31J) に変換したら通るようになったのですが、半角カナはダイアログ内の処理自体が通してくれないようで、ダイアログの「OK」ボタンが押せなくなります。これは何か対処方法があるでしょうか。 そのほか、何かほかに良い方法があったら教えてください。

  • Windowsフォルダ名の文字化け

    ひとつのPCでWindowsXPとFedoraCore4を混在して使っています。 Windowsパーティションをマウントして見ることはできたのですが、日本語のフォルダ名が文字化けしてしまいます(???になってしまいます)。 Windowsは日本語をシフトJIS表記、FedoraはUTF-8表記という文字コードの違いが原因だとはわかったのですが、LinuxでWindowsの フォルダ名を正常に日本語表記をさせる方法がわかりませんでした。 Windows側、Linux側それぞれ方法がありましたら(どちらでもけっこうです)ご教示いただけたら幸いです。

  • フォルダ内の韓国語のファイル名の一覧を作成するには

    エクスプローラーでフォルダの中を見ると 韓国語の文字を含むファイル名の 韓国語の文字が正しく表示されているのに コマンドプロンプトから dirを実行すると 韓国語の文字が■で表示されてしまいます。 コマンドプロンプトから dirを実行して 韓国語の文字が正しく表示させるようにすることは できるのでしょうか。 したいことは dir /b > list.txt で、フォルダの中にある 韓国語の文字を含むファイル名の一覧を 作成したいのですが、生成された list.txtは、韓国語の文字が?の表示になって うまくいきません。 フォルダの中にある 韓国語の文字を含むファイル名の一覧を 作成するにはどうすればよいでしょうか。 (Windows7 日本語)

  • VC++ フォルダの作成

    この間、似たような質問をさせていただきました 内容は、テキストボックスから文字列を取得して、その文字列と同名のフォルダをつくりたいというものでした。 回答者さまのヒントから、C:直下のDATAフォルダ内にそのtextBox1 -> Textのフォルダを作ろうということにしました。 別の回答者さまのヒントで、strcatもしくはsprintfなどを使って、予め文字列を作成しておいて、それを_mkdirに渡せばうまくいくとの指摘をいただきました。 理屈的には理解したのですが、strcatで試してみたところ、うまくいきませんでした。 コードが間違っていると思うので、診てもらってよろしいでしょうか? ----------------------------------------------------------------------- char *str; *str = "C:\\DATA\\"; strcat(str, textBox1 -> Text); _mkdir(str); ------------------------------------------------------------------------ _mkdir単体での実行はうまくいくので、strcatか、もしくはポインタの扱いが間違っていると思います。 指摘がいただけたら、よろしくおねがいします。

  • フォルダ内の複数ファイルから抽出(vbs)

    web のログファイルの集計のため、以下が可能なコードを教えていただきたい。 そのまま使えるコードですと非常に助かります。 (vbs または vba) logというフォルダに、複数のログファイルが入っています。 ファイルの文字コードは、UTF8  改行は、LFです。 この複数のファイルから、特定の文字列の入っている行を抜き出して、 1つのCSVファイルに書き出したい。(文字コードをShift-Jis 改行は、CRLFに変えたい) どうかお助けください。宜しくお願いいたします。

  • ソースコードの中から、日本語が使われている行・韓国語が使われている行を抽出したい

    あるアプリケーションのソースコード(言語はC#)があります。 このアプリケーションは元々、日本国内で使うものであるため、文字列(ダブルクォーテーションで囲まれているところ)には日本語(漢字、ひらがな、片仮名など)が使われています。 このアプリケーションの韓国語バージョンのソースコードもあります。基本的に、元の日本語バージョンの文字列の中の日本語を韓国語におきかえたものと思われます。(画面コントロールの位置や形などが違ったり、その他微妙な違いはありますが。) 元の日本語バージョンのソースコードから日本語の使われている文字列の行、韓国語バージョンのソースコードから韓国語が使われている文字列の行を探したいと思います。 ダブルクォーテーションが存在する行は秀丸エディタでgrepで探せますが、当然、日本語バージョンであっても文字列には、日本語が含まれていないもの(アルファベットだけとか)があります。 日本語が使われている行だけをgrep(抽出する・探す)したいのですが、どうすればよいですか。 できれば、秀丸を使いたいのですが、他のエディタなどでもかまいません。 それから、逆に、韓国語に置き換えたソースコードから、韓国語(ハングル)が使われている文字列の行だけを抜き出すにはどうすればよいでしょうか。 文字コードは、日本語バージョンも韓国語バージョンもANSIです。 コメント行は要らないので対象外ですが、そのことは考えなくていいです。(もし抽出されてしまっても、対処します。)

  • フォルダー名変更(指定文字を移動、削除)

    当初、フォルダー名変更ソフトでフォルダー名の変更を考えていましたが ソフトカテゴリーで回答が付かなかった。 EXCELのVBAを利用して変名出来る方法を教えて下さい。 指定ディレクトリーのフォルダー名を取得して 下記条件で変名後にフォルダー名を書き出す。 ------------------------------------------------------------------------ フィルダー名の先頭からX文字目からXX文字目までの指定文字列(ABS)を  フォルダー名の先頭に追加して、指定文字列(ABS)は削除する。 (X,XXは任意指定) 例えば、x=先頭の5文字目から、XX=3文字をだとすると   testABSmoji ---> ABStestmoji ------------------------ 逆に  フォルダー名最後部からX文字目からXX文字目までの指定文字列(oem)を  フォルダー名の先頭に追加して、指定文字列(oem)は削除する。 (X,XXは任意指定) 例えば、x=最後尾の1文字目から、XX=4文字をだとすると   TEST_TEST_oemm ---> oemmTEST_TEST_ ------------------------------------------------------------- 議事録の保存形式が年度によって(又は担当者によって)異なるので 作成年月日でソートを行うことが現在で来ていません。 180224(2018年2月24日)をフォルダー名の先頭に来るようにしたい。

  • PHPの文字コード変換について

    PHPで mb_convert_encodingを用いて UTF-8で記述されたPHPスクリプトファイルの PHPファイル内の任意の文字列の文字コードを変換する場合、 $value = "文字列"; $str = mb_convert_encoding($value ,"UTF8","UTF8"); print $str; この場合、特に問題なく、変換がおこなわれます というか、意味のないで処理ではありますが。 次に $str = mb_convert_encoding($value,"EUC-JP","EUC-JP"); とした場合 うまく文字列の文字コードの変換がおこなわれず 出力内容は文字化けします。 次に $str = mb_convert_encoding($value,"SJIS","SJIS"); とした場合 EUC-JPと同じく文字コード変換に失敗し 文字化けするだろうとおもいましたが おもいのほかブラウザの文字コードUTF-8のままで文字化けしていないのです。 これはどういう現象でしょうか? たとえば一つ目は UTF8で記述されたPHPファイルの文字列をそのままUTF-8として 変換されせるのですから、問題ないはずです。結果問題ありません。 二つ目は UTF-8でかかれたPHPファイルの文字列をEUC-JPでかかれたファイルとして EUC-JPという文字コードに変換しなさいという命令ですよね? これは思う通りにいかなくて文字化けした文字列が出力されるのはわかるのですが 三つ目はUTF8で記述された文字列をSHIFT-JISとしてSHIFT-JISに変換しようとしているにも かかわらず、結果問題なくブラウザのUTF-8で文字列と表示されてしまいます。 これはいったいどういう事なのでしょうか? これが仮に $str = mb_convert_encoding($value,"SJIS","UTF-8"); なら話は簡単んです。 UTF-8で記述されたファイルの任意の文字列を UTF8からSJISに変換しようとしているのですから問題なく SHIFT-JISでエンコーディングされた文字列が帰ってくるはずです。 こ乃原因をご存知のかたよろしくご教授ください。 お願い致します。

    • ベストアンサー
    • PHP
  • フォルダの条件付き世代管理(ローテーション)

    VBSの質問です。 ■やりたいこと 1)設定ファイルを読み込んで、バックアップするフォルダの世代数(2世代分)と、フォルダ名を取得する。 2)対象フォルダ内にある任意2文字のサブフォルダがあることを確認し、作成日付でソート(古い順)する。 3)直近の新しい任意2文字のサブフォルダを2世代分を残して、3世代以降は削除する。 VBS自体が初心者でサイトなどで勉強しておりましたが、結局実装できませんでした。 上記につきまして、どのように実装すれば良いかお分かりの方がいらっしゃいましたら、 ご教授いただけますと幸いです。 よろしくお願いいたします。