C++ でのテキスト ファイルの読み取りと書き込み
このチュートリアルでは、C++ でテキスト ファイルを読み書きする方法を学習します。どちらの場合も、読み取り/書き込みデータストリームを宣言した後、ファイルが存在するかどうかを常に確認してください:
ifstream myFlux("C:/test.txt");
if(myFlow){
...
}
else{
ファイルが存在しないことを示すメッセージ
}
#include
ifstream myFlux("C:/test.txt");
if(myFlow){
...
}
else{
ファイルが存在しないことを示すメッセージ
}
C++でファイルに書き込む
書き込みはストリームを作成することによって行われます ofstream。このフローが役割を果たします。仲介者の間 コンパイラとファイル。statementフロー名<<" "Write Something" < "何かを書いてください" test.txtです。endl は改行を行います.
#include
#include
#include <文字列>
#include
名前空間 std を使用します。
void write(int T[])
{
string const filename("C:/test.txt");
ofstream myStream(nomFichier.c_str());
if(myFlow)
{
文字列文字列;
for(int i = 0 ; i < 10 ;i++)
string += convertInt(T[i])+" "スパン>;
myFeed <<チェーン<
}
else
コスト<<"ファイルを開けません。" <
}
//整数を文字列に変換
文字列 convertInt(int number)
{
stringstream ssです。SS<<数;戻る ss.str();
}
//配列数を生成
//配列数を生成
int rand(int nb)
{
rand()%nbを返します。
}
int main()
{
int T1[10]={1,2,3,4,5,6,7,8,9,10};
書き込み(T1);
play()です。
srand(time(NULL));
for(int i=0; i<5;i++)
printf("%d \n",rand(50));
system("一時停止");
}
C++でファイルを読み込む
C++ では、次の 3 つの方法で読み取ることができます:
- 行単位: 再生カーソルは行全体を読み取り、getline メソッド( ifstream stream, string line).
- 単語単位: myFlow ステートメント>>言葉;言葉はひもです。単語はスペースで区切られます.
- 文字単位:メソッドget(char c).
例:
ボイド reading()
{
ifstream myFlux("C:/test.txt");
if(myFlow)
{
文字列行;
printf("行単位\n");
while(getline(myFlow,line))
コスト<<行です<
printf("単語ごとに\n");
myFlow.clear();
zero
zero
myFlux.seekg(0、ios::beg);
文字列の単語。
while(myFlow >>word)
コスト<
printf("文字単位\n");
myFlow.clear();
myFlux.seekg(0、ios::beg);
戦車c;
while(myFlux.get(c))
{
コスト<
int 位置= myFlow.tellg();
}
}
else
コスト<<"ファイルを開けません" スパン><
}