码迷,mamicode.com
首页 > 其他好文 > 详细

解决使用{freopen与 getline}读取不同文件时产生的的问题

时间:2020-01-27 09:22:27      阅读:149      评论:0      收藏:0      [点我收藏+]

标签:ext2   数据   lock   multi   wrap   efi   重定向   基本   iostream   

读取单一文件

使用 freopen重定向。

用 getline逐行读取,处理。

#include <iostream>
#include <cstdio>
#include <cstring>

using namespace std;
string s;

int main()
{
    freopen("text1.in", "r", stdin);
    while (getline(cin, s)) {
        /* - code - */
    }
    fclose(stdin);
    return 0;
}

读取多个文件

基本方法同上。

特别注意:在读取完一个文件后,

使用 cin.clear()清空输入流。

否则可能会有 除第一个文件,其他文件无读入的现象。

2020-1-27-1:07 在读取处理两个 txt文本数据时产生该问题。

编译环境:
Using built-in specs.
COLLECT_GCC=g++
COLLECT_LTO_WRAPPER=e:/tio/dev-cpp/mingw32/bin/../libexec/gcc/mingw32/4.8.1/lto-wrapper.exe
Target: mingw32
Configured with: ../gcc-4.8.1/configure --prefix=/mingw --host=mingw32 --build=mingw32 --without-pic --enable-shared --enable-static --with-gnu-ld --enable-lto --enable-libssp --disable-multilib --enable-languages=c,c++,fortran,objc,obj-c++,ada --disable-sjlj-exceptions --with-dwarf2 --disable-win32-registry --enable-libstdcxx-debug --enable-version-specific-runtime-libs --with-gmp=/usr/src/pkg/gmp-5.1.2-1-mingw32-src/bld --with-mpc=/usr/src/pkg/mpc-1.0.1-1-mingw32-src/bld --with-mpfr= --with-system-zlib --with-gnu-as --enable-decimal-float=yes --enable-libgomp --enable-threads --with-libiconv-prefix=/mingw32 --with-libintl-prefix=/mingw --disable-bootstrap LDFLAGS=-s CFLAGS=-D_USE_32BIT_TIME_T
Thread model: win32
gcc version 4.8.1 (GCC)

编译命令:
g++ Name.cpp -o Name.exe

正确示例:

#include <iostream>
#include <cstdio>
#include <cstring>

using namespace std;
string s;

int main()
{
    freopen("text1.in", "r", stdin);
    while (getline(cin, s)) {
        /* - code - */
    }
    fclose(stdin);
    cin.clear();
    freopen("text2.in", "r", stdin);
    while(getline(cin, s)) {
        /* - code - */
    }
    fclose(stdin);
    // ...
    return 0;
}

解决使用{freopen与 getline}读取不同文件时产生的的问题

标签:ext2   数据   lock   multi   wrap   efi   重定向   基本   iostream   

原文地址:https://www.cnblogs.com/leprechaun-kdl/p/12235322.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!