掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
文字化けを治すには? (ID:68554)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
// さらにぢくる・・・ /* FileIO.cpp XP sp3 , VC2005 , /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_UNICODE" /D "UNICODE" /Gm /EHsc /RTC1 /MDd /Fo"Debug\\" /Fd"Debug\vc80.pdb" /W4 /nologo /c /Wp64 /ZI /TP /errorReport:prompt */ #include <stdio.h> #include <string.h> int main() { // 変数の宣言 static int mode = 0 ; char filename[ 256 ] ; char str[ 1024 ] ; FILE * fp ; errno_t err ; // モードの選択([5]を選択したときだけプログラム終了) while( mode != 5 ) { printf( "次の[1]〜[5]を選択してください。\n" ) ; printf( "[1]:新しくファイルを作る\n" ) ; printf( "[2]:すでにあるファイルに上書きする\n" ) ; printf( "[3]:すでにあるファイルに新しくデータを付け加える\n" ) ; printf( "[4]:すでにあるファイルからデータを読み出す\n" ) ; printf( "[5]:プログラムを終了する\n" ) ; scanf_s( "%d", &mode ) ; fflush( stdin ) ; if( ( 0 < mode ) && ( mode < 5 ) ) { printf( "ファイル名を入力\n" ) ; gets_s( filename ) ; strcat_s( filename, ".txt" ) ; } switch( mode ) { case 1: // 新規でファイルを作る err = fopen_s( &fp, filename, "w" ) ; if( err ) { puts( "ファイルの作成に失敗\n" ) ; return 1 ; } else { puts( "ファイルの作成に成功\n" ) ; fputs( "mode-1:新規作成によって書きこまれた文字列\n", fp ) ; fclose( fp ) ; } break ; case 2: // ファイルに上書き err = fopen_s( &fp, filename, "r+" ) ; if( err ) { puts( "ファイルがオープンできません\n" ) ; return 1 ; } else { fputs( "mode-2:上書きによって書きこまれた文字列\n", fp ) ; puts( "ファイルを上書きしました\n" ) ; fclose( fp ) ; } break ; case 3: // 新しくデータを付け加える err = fopen_s( &fp, filename, "a+" ) ; if ( err ) { puts( "データの付け加えに失敗\n" ) ; return 1; } else { fputs( "mode-3:追加によって書きこまれた文字列\n", fp ) ; puts( "ファイルにデータを付け加えました。\n" ) ; fclose( fp ) ; } break ; case 4: // ファイルを開く err = fopen_s( &fp, filename, "r" ) ; if ( err ) { puts("ファイルをオープンできません\n") ; return 1 ; } else { puts("ファイルのオープンに成功\n") ; puts( "-----------------" ) ; while( fgets( str, 700, fp ) ) { printf( "%s", str ) ; } puts( "-----------------" ) ; fclose( fp ) ; } break ; case 5: // プログラムを終了する return 0 ; default : printf( "エラーです。もう一度選択してください。\n" ) ; break ; } } return 0 ; }
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.