Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / C++ [игнор отключен] [закрыт для гостей] / Как слить в файл массив unsigned char Buf[32]? / 6 сообщений из 6, страница 1 из 1
18.04.2005, 16:55
    #33021642
Serega128
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как слить в файл массив unsigned char Buf[32]?
Как слить в файл массив unsigned char Buf[32]? Юзаю С++ Билдер.
...
Рейтинг: 0 / 0
18.04.2005, 17:18
    #33021701
Serega128
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как слить в файл массив unsigned char Buf[32]?
В одном проекте такой код работает, а в другом нет:
unsigned char Buf[5] = {'a', 'b', 'c', 'd', 'e'};
FILE *f;
f = fopen("file", "a");
fputs(Buf, f);
fclose(f);
...
Рейтинг: 0 / 0
18.04.2005, 17:32
    #33021741
ZrenBy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как слить в файл массив unsigned char Buf[32]?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
// crt_fread.c
/* This program opens a file named FREAD.OUT and
 * writes 25 characters to the file. It then tries to open
 * FREAD.OUT and read in 25 characters. If the attempt succeeds,
 * the program displays the number of actual items read.
 */

#include <stdio.h>

int main( void )
{
   FILE *stream;
   char list[ 30 ];
   int  i, numread, numwritten;

   /* Open file in text mode: */
   if( (stream = fopen( "fread.out", "w+t" )) != NULL )
   {
      for ( i =  0 ; i <  25 ; i++ )
         list[i] = (char)('z' - i);
      /* Write 25 characters to stream */
      numwritten = fwrite( list, sizeof( char ),  25 , stream );
      printf( "Wrote %d items\n", numwritten );
      fclose( stream );

   }
   else
      printf( "Problem opening the file\n" );

   if( (stream = fopen( "fread.out", "r+t" )) != NULL )
   {
      /* Attempt to read in 25 characters */
      numread = fread( list, sizeof( char ),  25 , stream );
      printf( "Number of items read = %d\n", numread );
      printf( "Contents of buffer = %.25s\n", list );
      fclose( stream );
   }
   else
      printf( "File could not be opened\n" );
}
...
Рейтинг: 0 / 0
18.04.2005, 17:32
    #33021742
vitvsh
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как слить в файл массив unsigned char Buf[32]?
2 Serega128
Код: plaintext
unsigned char Buf[ 6 ] = {'a', 'b', 'c', 'd', 'e',  0 };
...
Рейтинг: 0 / 0
06.05.2005, 12:16
    #33052375
Dubrov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как слить в файл массив unsigned char Buf[32]?
Serega128
В одном проекте такой код работает, а в другом нет:
unsigned char Buf[5] = {'a', 'b', 'c', 'd', 'e'};
FILE *f;
f = fopen("file", "a");
fputs(Buf, f);
fclose(f);

fputs выводит в файл строку которая должна заканчиваться '\0' а ты выводишь просто массив. Для этого надо использовать или fwrite если на C
или ostream::write если на С++.
---
С уважением, Dubrov.
...
Рейтинг: 0 / 0
06.05.2005, 12:18
    #33052379
Dubrov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как слить в файл массив unsigned char Buf[32]?
Ой, что-то не посмотрел на другие ответы. Все уже давно и без меня написано. Sorry.
---
С уважением, Dubrov.
...
Рейтинг: 0 / 0
Форумы / C++ [игнор отключен] [закрыт для гостей] / Как слить в файл массив unsigned char Buf[32]? / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]