PDA

View Full Version : خواندن و نوشتن چندین فایل باینری



tootro20
یک شنبه 26 اردیبهشت 1395, 22:08 عصر
سلام میخوام آدرس تعدادی فایل از کاربر بگیرم و در یک فایلی به صورت مجزا باهم ادغامشون کنم مثلا در فایلی بنام Structure.txt و در آخر فایل هم میزان هریک از فایل حجمشو براساس بایت بنویسم و یکبار هم آدرس فایلی که ادغام شدن مثلا همون آدرس فایل Structure.txt از کاربر بگیرم و باز به صورت مجزا همون تعداد فایلی که ادغام کردم در بیارم.
این کد منه اما نمی دونم چرا به صورت باینری نمی نویسه، لطفا دوستان کمکم کنید خواهش میکنم.

#include <iostream>
#include <string>
#include <fstream>
#include <iterator>
#include <algorithm>
using namespace std;
int tedad_file=0; // Daryaft tedad file jahate edgham //

int main()
{
int tr=0;
cout << "Lotfan Tedad file jahate edgham vared konid: ";
cin >> tedad_file;
cout << "\n";
std::string files[tedad_file];
int counter=0;
int temp=0;
for(;temp<tedad_file;temp++)
{
cout << "Lotfan address file " << temp + 1 << " vared konid: \n";
cin >> files[temp];
}
streampos size1;
int x=0;
ofstream output( "D:\\Structure.txt", std::ios::binary );

for(;x<tedad_file;x++)
{

ifstream input( (char*)&files[0], std::ios::binary );
std::copy(
std::istreambuf_iterator<char>(input),
std::istreambuf_iterator<char>( ),
std::ostreambuf_iterator<char>(output));

}
return 0;
}

http://www.axgig.com/images/93984492067704276989.jpg

http://www.axgig.com/images/56201056185192976887.jpg