初学者在这里,请耐心等待。因此,我正在从一个csv文件中读取数据,我需要逐字读取数据,然后在行尾停下来。这是代码。
fstream fops;
fops.open("file.csv");
string s;
do
{
fops>>s;
}while(s!="\n");
但是,循环继续到下一行,直到文件结束。请帮我解决这个问题
答案 0 :(得分:7)
我需要逐字读取数据并停在行尾。
class Device(models.Model):
"""
"""
user = models.ForeignKey(get_user_model(), on_delete=models.CASCADE)
deviceModel = models.CharField(max_length=128, verbose_name=_(u"Device Model"))
deviceId = models.CharField(max_length=128, verbose_name=_(u"Device ID"))
packageId = models.CharField(max_length=128, verbose_name=_(u"Package ID"))
tokenId = models.TextField(verbose_name=_(u"Token ID"))
platformId = models.CharField(max_length=10, verbose_name=_(u"Plataforma ID"))
created_at = models.DateTimeField(auto_now=True, verbose_name=_(u"Created"))
updated_at = models.DateTimeField(auto_now=True, verbose_name=_(u"Updated"))
def __str__(self):
return u'Device: {0}'.format(self.deviceId)
def __unicode__(self):
return self.__str__()
def send_logout(self):
"""
Send logout Notification Message
"""
active_session = ActiveSession.objects.filter(
device=self
).first()
if active_session:
push_service = FCMNotification(api_key=settings.FCM_API_KEY)
data_message = {
"action": "Logout",
"token_id": active_session.token_jwt
}
push_service.single_device_data_message(
registration_id=self.tokenId,
data_message=data_message,
content_available=True
)
答案 1 :(得分:2)
operator>>()
忽略空格。使用getline()
代替读取整行。或者,找到一个库来读取和解析CSV文件。
我想逐字阅读它,以便可以将每个单词分配给另一个变量。
使用operator>>()
不能区分空格' '
和换行'\n'
。您应该阅读整行,然后将其解析为“单词”。
答案 2 :(得分:-4)
尝试“ \ n \ r”,请记住,某些操作系统使用不同的字符来返回