
No.2ベストアンサー
- 回答日時:
> fstream fs;
この行の上に
locale::global(locale("japanese"));
又は
setlocale(LC_ALL, "japanese");
と書いた行を挿入すればファイルが見つかり読み込めます。
ところが……
> Visual C++ 2005 Express Edition
このバージョンの場合は locale 指定するとまともな動作をしません。
ファイルの中に全角文字があるとその部分から表示が出なくなります。
次の URL では wcout...(※ となってますが cout でも同じことが起きます。
wcoutのlocale
http://forums.microsoft.com/MSDN-JA/ShowPost.asp …
※) ワイド文字を扱う場合には cout ではなく wfstream や wcout 使うからです。
このようにお使いのバージョンでは locale を指定するとうまく動作しませんので
locale は使わずに
> fs.open("I:\\勉強\\あtest0.txt",ios::in);
この部分のファイル名の指定している引数に「L」を挿入して const wchar_t * と
して扱うようにされるとよろしいかと思います。
fs.open(L"I:\\勉強\\あtest0.txt",ios::in);
第一引数に const wchar_t * も使えますので問題はなと思いますが、これはバグの
回避策であって、本来は locale を指定するのが正しいことかと思われます。
※ Visual C++ 2008 Express Edition は問題ありませんでした。
速攻のご対応誠にありがとうございます。
最近Cの勉強を始めたばかりで直ぐに壁に当たってしまいます。
私にとっては殆どが高い壁です。挫折せずにを続けて行くつもりですので、今後も宜しくお願いします。
本件も、ご回答を基に私なりに咀嚼したいと思います。
No.1
- 回答日時:
> C又はC++にて
C と C++ のどちらなのでしょう?
> ちなみに、英文字名は読み込む事ができました。
そう仰られるのであれば英数字名で読み込むことができたコードを提示して頂けないでしょうか?
そうなさって頂ければ、問題や原因などがわかり解決に繋がると思われます。
この回答への補足
早速のご回答ありがとうございます。言葉足らず申し訳ありませんでした。宜しくお願いします。
>C と C++ のどちらなのでしょう?
は、C++を考えていますが、CでもOKです、参考にして勉強します。
> ちなみに、英文字名は読み込む事ができました。
は、お恥ずかしい限りですが参考資料の説明例題を日本語名にしたものです。
#include <algorithm>
#include <fstream>
#include <iostream>
#include <stdio.h>
using namespace std;
int main()
{
fstream fs;
fs.open("I:\\勉強\\あtest0.txt",ios::in);
if (!fs)
{
cout<<"ファイルが開けません"<<endl;
return 0;
}
char c;
while (!fs.eof())
{
fs.read(&c,1);
cout<<c;
}
return 0;
}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
COPYコマンドで結合すると余計...
-
.txtではなく.logの方が良いの...
-
テキストファイルのタブをカン...
-
ファイルの最後に文字列挿入
-
OpenCVの正解生成のcreatesamples
-
renameコマンドについて
-
Windowsのバッチファイルを利用...
-
UWSCでファイルを開く方法
-
UWSCでテキストファイルを開い...
-
ハードディスク上書き用大容量...
-
VBScriptでtxtファイルの中身を...
-
ファイル名の特定の一文字のみ...
-
シェルでファイルから1行づつ...
-
テキストファイルで提出とは?
-
ファイル名の一部をbatで変更し...
-
ファイルを処理中に次の処理に...
-
VBAのSaveFileNamePathメソッド
-
VBSでフォルダ内のテキストファ...
-
バッチ処理でファイルの中身を...
-
エクセルのVBAについて とある...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
バッチ処理でファイルの中身を...
-
.txtではなく.logの方が良いの...
-
VBAでワークシートを引数として...
-
テキストファイルで提出とは?
-
多数のサブディレクトリ内のフ...
-
psqlでエラーログをとりたい
-
拡張子を元に戻す
-
COPYコマンドで結合すると余計...
-
バッチファイルからVBAに引数を...
-
renameコマンドについて
-
ファイルの最後に文字列挿入
-
3つ以上のテキストファイルをコ...
-
バッチファイルで文字列削除に...
-
VBSでフォルダ内のテキストファ...
-
ftpコマンドで複数のファイルを...
-
ファイル内容の修正、行削除に...
-
★★★PowerShellのpatternについ...
-
コマンドプロンプトで指定した...
-
forfilesで検索したファイルを...
-
バッチファイル 複数ファイル...
おすすめ情報