Запись Строки В Файл

Тема в разделе "Общие вопросы по С и С++", создана пользователем random-name, 28 мар 2012.

  1. random-name

    random-name Гость

    Всем привет)

    Пишу программку, которая переписывает строку из .txt файла в другой .txt файл.
    Необходимо чтобы строки не перезаписывались, а писались с новой строки(это сделано), но также чтобы после каждой строки был пробел.

    Помогите разобраться! Заранее спасибо)

    Вот код:
    Код (C++):
    #include "stdafx.h"
    #include "windows.h"
    #include <stdio.h>
    #include <iostream>
    #include <conio.h>
    #include <time.h>

    using namespace std;

    int _tmain()
    {
    FILE *file1, *file2;
    char* file_name = "D:\\file1.txt";
    char load_string[100] = "none";

    time_t tt;
    struct tm * ptm;
    char buf[BUFSIZ];

    tt = time(NULL);
    ptm = localtime(&tt);
    strftime(buf, BUFSIZ, "D:\\tt%Y%m%d.txt", ptm);

    file1 = fopen(file_name, "r");
    file2 = fopen(buf, "a");

    fputs( "string", file1);

    if( file1 != 0 )
    {fgets( load_string, 100, file1);
    cout << "Data is record!" << endl; }
    else
    {cout << "File not found !" << endl;}  

    fprintf(file2, load_string); // Вот здесь непонятно. Пишу fprintf(file2, load_string, " "); но пробела так и нет.
    // Или пишу fprintf(file2, " \n", load_string); - тогда пробел в начале строки...

    fclose(file1);
    fclose(file2);

    _getch();
    }
     
  2. lazybiz

    lazybiz Well-Known Member
    C\C++ Team

    Регистрация:
    3 ноя 2010
    Сообщения:
    1.344
    Симпатии:
    0
    Не знаешь как работает printf/fprintf и как форматирование строки происходит?

    fprintf( file2, "%s ", load_string );
     
  3. random-name

    random-name Гость

    Не все так просто. Я пробовал и так...
    Если записать
    Код (C++):
    fprintf(file2, "%s ", load_string);
    то пробел печатается в начале следующей строки.

    Я не понял почему происходит автоматический переход на новую строку.
    Если не затруднит - расскажите пожалуйста или ссылку киньте)

    Так вот надо чтобы пробел печатался в конце строки, а потом уже происходил переход на новую строчку.
     
  4. random-name

    random-name Гость

    Я понял почему происходит переход строки.
    Потому что в исходном файле уже есть этот перенос)

    Вопрос отпадает! Спасибо за внимание)
     
Загрузка...

Поделиться этой страницей