Простая программа открывающая файл на C++.
Пользователи, просматривающие топик: none
|
Зашли как: Guest
|
Имя |
Сообщение |
<< Старые топики Новые топики >> |
|
|
Простая программа открывающая файл на C++. - 2009-05-05 20:53:45.913333
|
|
|
MIST_404
Сообщений: 175
Оценки: 0
Присоединился: 2008-10-16 21:19:00.576666
|
Народ, такая проблема: изучаю C++, добрался до файлов, написал программу, а она не считывает файл: #include <iostream>
#include <vector>
#include <algorithm>
#include <fstream>
#include <string>
using namespace std;
int main()
{
char buff[80];
vector<string> s;
ifstream infile;
infile.open("/home/tr/testfile");
while(1)
{
infile.getline(buff, sizeof(buff));
if(infile.eof())
{
break;
s.push_back(buff);
}
}
for (int i = 0; i < s.size();i++)
{
cout << s[i] << endl;
infile.close();
}
}
Что не правельно (в учебнике примерно так и написано, только там они ещё и сортируются). ————- Может где в синтаксисе не верно (учемник DjVu, качество плохое :((( ) ————– З.Ы: Прошу сильно не бить :D
|
|
|
RE: Простая программа открывающая файл на C++. - 2009-05-05 21:10:05.853333
|
|
|
vvviperrr
Сообщений: 301
Оценки: 0
Присоединился: 2007-03-20 21:33:16.790000
|
2MIST_404 у тя точно линух?)
|
|
|
RE: Простая программа открывающая файл на C++. - 2009-05-05 21:14:14.713333
|
|
|
MIST_404
Сообщений: 175
Оценки: 0
Присоединился: 2008-10-16 21:19:00.576666
|
Да у меня дженту.
|
|
|
RE: Простая программа открывающая файл на C++. - 2009-05-05 21:25:59.663333
|
|
|
vvviperrr
Сообщений: 301
Оценки: 0
Присоединился: 2007-03-20 21:33:16.790000
|
скорее всего у тебя файл состоит из < размера буфера, и ты читаешь его за раз. while(1) { infile.getline(buff, sizeof(buff)); - прочитал if(infile.eof()) - и сразу конец файла. делай так:
#include <iostream>
#include <vector>
#include <algorithm>
#include <fstream>
#include <string>
using namespace std;
int main()
{
char buff[80];
vector<string> s;
ifstream infile;
infile.open("/home/viper/myfile");
while(!infile.eof())
{
infile.getline(buff, sizeof(buff));
s.push_back(buff);
}
for (int i = 0; i < s.size();i++)
{
cout << s[i] << endl;
infile.close();
}
}
да и читаешь чар строку, а в векторе у тебя стл-овский стринг)
|
|
|
RE: Простая программа открывающая файл на C++. - 2009-05-05 21:34:58.543333
|
|
|
MIST_404
Сообщений: 175
Оценки: 0
Присоединился: 2008-10-16 21:19:00.576666
|
quote:
#include <iostream> #include <vector> #include <algorithm> #include <fstream> #include <string> using namespace std; int main() { char buff[80]; vector<string> s; ifstream infile; infile.open("/home/viper/myfile"); while(!infile.eof()) { infile.getline(buff, sizeof(buff)); s.push_back(buff); } for (int i = 0; i < s.size();i++) { cout << s << endl; infile.close(); } } Сенкс тебе чувак, если бы не ты, хоть фешайся (серьёзно сегодня себе всю башку сломал почему не работает :D), а этим придуркам из универов, которые учебники составляют нужно всем головы повыкручивать, что бы писали правельно :D
|
|
|
|
|