0
#include <fstream>
#include <iostream>
using namespace std;


char input_1[256]="1.wmv";
char output_1[256]="2.wmv";
char output_2[256]="3.wmv";



void Append()
{
    ofstream write(output_1,ios::binary|ios::app);
    ifstream read(output_2,ios::binary);
    read.seekg(0,ios::end);
    int size_=read.tellg();
    read.seekg(0,ios::beg);
    char* in=new char[size_];
    read.read(in,size_);
    write.write(in,size_);
    write.close();
    read.close();
}

void Split(){
    int size_;

    ifstream read(input_1,ios::in|ios::out|ios::binary);
    if(read.is_open())
    {
        read.seekg(0,ios::end);
        size_=read.tellg();
        const int half=size_/2;
        read.seekg(0,ios::beg);
        char* file_content_a=new char [half];
        char* file_content_b=new char [half];
        read.read(file_content_a,half);
        read.read(file_content_b,half);
        read.close();
        ofstream write_a(output_1,ios::binary);
        ofstream write_b(output_2,ios::binary);
        write_a.write(file_content_a,half);
        write_b.write(file_content_b,half);
        write_a.close();
        write_b.close();
    }
}


int main()
{
    cout << "Choose: \n"
            "1. Split\n"
            "2. Append\n";
    int c=2;
    cin >> c;

    switch(c){
        case 1:
             cout << "File to split: ";
             //cin >> input_1;
             cout << "Write to[1]: ";
             //cin >> output_1;
             cout << "Write to[2]: ";
             //cin >> output_2;
             Split();
             break;
        case 2:
             cout << "Append to: ";
             //cin >> output_1;
             cout << "Append from: ";
             //cin >> output_2;
             Append();
             break;
    }
    return 0;
}

This programs runs fine but in the end it fills the last file with garbage ?
Any suggestions please ?

2
Contributors
1
Reply
2
Views
4 Years
Discussion Span
Last Post by Ancient Dragon
This topic has been dead for over six months. Start a new discussion instead.
Have something to contribute to this discussion? Please be thoughtful, detailed and courteous, and be sure to adhere to our posting rules.