Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Чтение файла
- int size; char *fileData;
- ifstream file("big.txt", ios::binary);
- file.seekg(0, ios::end);
- size = file.tellg();
- file.seekg(0, ios::beg);
- fileData = new char[size + 1];
- file.read(fileData, size);
- fileData[size] = 0;
- file.close();
- //cout << fileData << endl;
- //Остаток от деления на количество файлов
- int ost = size % 20;
- cout << ost << endl;
- //Целая часть
- int col = (size - ost) / 20;
- cout << col << endl;
- char **Pack = new char*[20]; //Выделяем память под количество строк
- for (int i = 0; i<20; i++) Pack[i] = new char[size];
- for (int i = 0; i<20; i++){
- strcpy(Pack[i] - col*i, fileData);
- cout << Pack[i] << endl << endl << endl;
- //printf("string - %s",pack[0]);
- }
- for (int i = 0; i < 20; i++) {
- delete[]Pack[i];
- }
- delete[]Pack;
- for (int i = 0; i<20; i++) {
- strcpy(Pack[i] - col*i, fileData);
- char longStr[] = "vbjhghjacvskv sdghjv sdghsdcv "
- "sdfhvghvdfghvsfdhgvksuygrugfqgawg q4ut6r7843"
- " grygfuyqwg gxegfuyegwdg fxkugsygwkxgywgryxg"
- "jakysgqgxcfasgsdfhjkahshchhcgashgsdfggsksgjs";
- int main()
- {
- const int partCount = 20;
- const int strLength = strlen(longStr);
- int partSize = (strLength+partCount-1) / partCount;
- char **Pack = new char*[partCount];
- for(int i = 0; i < partCount; ++i)
- {
- Pack[i] = new char[partSize+1];
- strncpy(Pack[i],longStr+partSize*i,partSize);
- Pack[i][partSize] = 0;
- }
- for(int i = 0; i < partCount; ++i)
- {
- cout << "Part " << setw(2) << i << ": " << Pack[i] << endl;
- }
- for(int i = 0; i < partCount; ++i)
- {
- delete[] Pack[i];
- }
- delete[] Pack;
- }
Add Comment
Please, Sign In to add comment