Показать сообщение отдельно

  #12  
Старый 13.12.2009, 03:46
Suliman36
Новичок
Регистрация: 12.12.2009
Сообщений: 13
С нами: 8639590

Репутация: 0
По умолчанию

Чета оно работает не так как запланированно

Там какбы накладывается данные друг на друга и получается совсем не то что надо, и только последняя строка записывается как надо

ошибка скорей всего в этом участке кода:

Комментарии это как я понимаю код

while (!passFile.eof()) { // цыкл до момента пока не достигнут конец файла
line = ""; // объявляен/обнуляем переменную
getline(passFile, pass); // выбираем знчение строки и присваиваем переменной
while (!uinFile.eof()) { // цыкл до момента пока не достигнут конец файла
getline(uinFile, uin); // выбираем знчение строки и присваиваем переменной
line += uin + ";" + pass + "\n"; дописываем значение переменной
}
source += line; дописываем значение
uinFile.seekg(std::ios::beg); сдвиг указателя
}

если я хоть нимного понял этот код, то пойдее нужно так?
Код:
#include <iostream>
#include <string>
#include <fstream>

int main (int argc, char* argv[]) {
    std::string source, uin, pass;
    std::ifstream uinFile("uin.txt");
    std::ifstream passFile("pass.txt");
    std::ofstream sourceFile("source.txt");
    if (!uinFile.is_open()) {
        std::cout << "Unable to open file uin.txt\n";
        return 1;
    }
    if (!passFile.is_open()) {
        std::cout << "Unable to open file pass.txt\n";
        return 1;
    }
    if (!sourceFile.is_open()) {
        std::cout << "Unable to open file source.txt\n";
        return 1;
    }
    while (!passFile.eof()) {
        getline(passFile, pass);
        while (!uinFile.eof()) {
            getline(uinFile, uin);
            source += uin + ";" + pass + "\n";
            uinFile.seekg(std::ios::beg);
        }
        passFile.seekg(std::ios::beg);
    }
    sourceFile << source;
    uinFile.close();
    passFile.close();
    sourceFile.close();
    return 0;
}

Последний раз редактировалось Suliman36; 13.12.2009 в 04:00..
 
Ответить с цитированием