📄 field.cpp
字号:
// field.cpp: implementation of the field class.
//
//////////////////////////////////////////////////////////////////////
#include "field.h"
//////////////////////////////////////////////////////////////////////
// Construction/Destruction
//////////////////////////////////////////////////////////////////////
field::field( ifstream& instream )
{
input = &instream;
length = 0;
end_of_file = 0;
infield = 0;
data = 0;
getfield();
}
field::~field()
{
delete[] data;
data = 0;
}
//从文件中获取一个单词
void field::getfield()
{
char c = input->get();
//文件结束?
if ( c == EOF )
{
end_of_file++;
return;
}
else
{
if ( ( ( c != ',' ) || infield ) && ( c != '\n' ) )
{
if ( ( c != '"' ) && ( c != '\r' ) )// '\r'为回到行首
{
length++;
}
//c为“ 或为 软回车
else
{
if ( c == '\"' )
{
infield = !infield;
}
c = 0;
}
//回调自身
getfield();
}
//c为逗号或回车
else
{
fsize = length;
data = new char[length + 1];
data[length] = '\0';
length--;
return;
}
//c是否指令置零
if ( c )
{
//保存字母
data[length--] = c;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -