• ベストアンサー

C#でのrarファイルの解凍

C#でのrarファイルの解凍 chilkatという.net framework用のコンポーネントを使ってrarファイルの解凍を試していたんですが 基本的にはきちんと動きますが Unrar()メソッドを使った時、解凍先のディレクトリ名に日本語が含まれているとうまく動きません どなたか対処法をご存じないでしょうか? または、日本語でもきちんと動くrarファイルの解凍が可能なコンポーネントをご存知でしたらぜひ教えてください

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

  • ベストアンサー
回答No.1

返答来るかわからないけど、Chilkat.Rarの方は現象確認できたんで、さっきメールを送りつけといた。 ============================== Hello. I'm a user of OKWave, a question and answer forum in Japan, was browsing through question as usual, and found a person who posted a bugreport. http://okwave.jp/qa/q7287412.html the reporter nasumiso2022 says that when the destination directory contains non-ASCII characters such as japanese characters, the files are not outputed to the correct directory and the filename was messed up. I also confirmed the bug.(the program seems to consider UTF-8 '0xe3 0x81 0x82','0xe3 0x81 0x82' to be '0xe3 0x81','0x82 0xe3','0x81 0x82' in shift_jis , which is default multibyte encoding(mainly 2 bytes for each char except for us-ascii) for Japanese. =============================== *とりあえず俺はSharpCompressのSharpCompress.3.5.dllを使ってみた。基本的にStreamを使うんであって、ファイルに書きだす形では無いのを俺は気に入っている。 http://sharpcompress.codeplex.com/ 反面自分でFileStreamを生成する必要があるけれども。普通に考えて普通に使っているFileStreamに文字化けせず書き出せるなら文字化けしない。(確認済み) http://ideone.com/NFVyE ---- *俺は有償なり期間限定のWinRARをあまり使いたくないと思っていて、且つ幾つかのアーカイバやこのSharpCompressも含めそれなしでの圧縮機能は対応していなかったので、サンプルファイルが自前で作れず、日本語のファイルやフォルダを圧縮したサンプルファイルまでは作れなかった。 *他のサイト等で入手可能なrarファイルは大抵海外で日本語ファイル名とかが含まれてないし、フォルダ階層自体を必要としないものばかりであると思うから、やはり実験は出来ず。

nasumiso2022
質問者

お礼

わざわざメールまでして頂いてありがとうごうざいます

関連するQ&A