不幸的是,我必须从文件中读取数据以进行分配,而不是用空格分隔各个字段,而是使用空字符。当从文件中获取整数时,它们被提取得很好但是对于字符串我只是从我未初始化的字符数组中得到一个空格和垃圾。关于如何将字符提取到我的字符数组中而忽略空字符的任何想法。
编辑:
char fName[15],lName[15],pMethod[5],roomType[10],purpose[15];
int days, roomNum;
long guestID;
datafile>>guestID;
datafile.getline(fName,15,'\0');
datafile.getline(lName,15,'\0');
cout<<guestID<<endl;
cout<<fName<<endl;
cout<<lName<<endl;
不幸的是,我现在正在使用的代码是 fName 没有再次获取 null 以外的任何内容 lName 正在获取 fName 的字符串值。正在考虑将数字作为字符串获取并进行转换。
最佳答案
使用getline
并传递 \0
(空字符)作为分隔符。
关于C++:从具有空字符的文件中读取,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4071313/