Loading...

Във форума е въведено ограничение, което позволява на потребителите единствено да разглеждат публикуваните въпроси.

adrnbeats avatar adrnbeats 37 Точки

[C Programming] Проблем при разцепване на файл?

Здравейте. Още вчера докато гледах лекцията за файлове и стриймове, паралелно си бях разписал File Splitter-а, който Наско показваше. След 10 неуспешни опита да ми сплитне babe.jpg (не пълни отделните части), реших че аз бъркам някъде и по-късно си изтеглих демата от лекцията. Оказа се обаче, че и тоя Splitter на Наско, който очевидно в лекцията работи без проблем при мен отново издъхна. Изчетох всичко възможно и не намерих нищо, което да ми помогне. Това, което се случва е че ми записва нещо от типа на 50 byte-а в първия Part1.jpg, а всички други са на 0 (празни). Когато обаче се пробвам да сплитвам .txt/.html файл - проблем изобщо няма? След т'ва пробвах и с друг .jpg, също и с .mp3 и пак пълни някакви измислени 50-100 byte-а и приключва. Под Windows съм. Предполагам, че ако беше проблемен Windows-а нямаше да сплитва нищо? Някакви съвети?

0
C Programming 06/11/2015 15:40:39
a_rusenov avatar a_rusenov 1103 Точки
Best Answer

Изглежда под Windows проблемът идва от там, че новите редове са \n\r (т.е. 2 символа) и EOF в текстови файлове се представя като байта 1A. За да не се интерпретира този байт като край на файла, трябва да отваряш потоците в режими "rb" и "wb" вместо само "r" или "w". b идва от binary.  

Под Linux това няма значение. 

2
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.