[英]C++ write to file
我有一個寫入文本文件的程序。
我的文本文件中的示例:
4
QA131 100 100 100 100
QA132 100 100 100 100
QA133 100 100 100 100
QA134 100 100 100 100
我想寫一個存儲記錄的新行,4將變為5。
用於寫入文件的方法是什么?
這是我的代碼:
void inputRecord()
{
Product product[101];
char FILENAME[20];
cout<<"Enter the file you want to open: ";
cin>>FILENAME;
ifstream read(FILENAME);
if (read.is_open())
{
while(read.good())
{
read>>product[0].line;
for(int i =0;i< product[0].line;i++)
{
read >>product[i].PartNumber
>>product[i].initialQuantity
>>product[i].quantitySold
>>product[i].minQuantity
>>product[i].price;
}
product[0].line+=1;
}
read.close();
}
ofstream write(FILENAME);
write<<product[0].line << endl;
for(int i =0;i< product[0].line;i++)
{
write << product[i].PartNumber << '\t'
<< product[i].initialQuantity << '\t'
<< product[i].quantitySold << '\t'
<< product[i].minQuantity << '\t'
<< product[i].price << '\t' << endl;
}
write.close();
cout << "Inventory added successfully!" << endl;
system("pause");
system("CLS");
}
我無法將該項目寫入文件。
你可以用fseek來解決你的問題。
這是一個基於這個C ++參考示例的簡單示例
#include<cstdio>
int main(void) {
FILE * pFile;
pFile = fopen ( "test.txt" , "wb" );
fprintf(pFile,"00000\n"); // watch spacing
for (int i=1; i<11; i++) {
fprintf (pFile, "%d. This line a line of stuff.\n",i);
}
fseek(pFile , 0 , SEEK_SET );
fprintf(pFile,"10 \n");
fclose(pFile);
return 0;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.