Форум программистов, компьютерный форум, киберфорум
Delphi
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 12.12.2010
Сообщений: 9
1

что то с кодировкой

14.12.2010, 20:39. Показов 705. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
записывает вместо текста кракозябры
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
function TForm1.WriteFile: boolean;
var
  buf:PChar;
begin
  if WaitForSingleObject(MyMutex,5)=WAIT_OBJECT_0 then
    result:=true
  else
  begin
    result:=false;
    exit;
  end;
  try
    with TFileStream.Create('file.txt',fmCreate or fmShareDenyWrite) do
      try
        buf:=Memo1.Lines.GetText;
        Write(buf,Length(buf));
      finally
        Free;
      end;
    if CheckBox1.Checked then Sleep(10);
  finally
    ReleaseMutex(MyMutex);
  end;
end;
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.12.2010, 20:39
Ответы с готовыми решениями:

С кодировкой базы данных и кодировкой сайтом и кодировкой файла разобраться не могу
С кодировкой базы данных и сайтом файлом разобраться не могу. Я на своем сайте вывожу данные из...

непонятки с отображением языка. что-то с кодировкой или что это?
задали выполнить сайт из 3-4 страниц. первую сделала - работает.. исходя из нее решила делать...

Что с кодировкой?
Удалась возможность разжиться ПК с Виндовс. И столкнулся с непонятным. Кодировка СР1251. В консоли...

Что-то с кодировкой
При сохранении файла выдаётся сообщение (см. картинку). Суть цикла- проверка на принадлежность...

3
86 / 85 / 13
Регистрация: 21.10.2010
Сообщений: 349
14.12.2010, 21:44 2
Потому что тип переменной buf PChar а надо String;
0
13104 / 5885 / 1706
Регистрация: 19.09.2009
Сообщений: 8,808
14.12.2010, 23:01 3
Предлагаю два примера:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
procedure TForm1.Button1Click(Sender: TObject);
const
  Fn = 'file.txt';
var
  F : File;
  S : String;
begin
  S := Memo1.Text;
  AssignFile(F, Fn);
  Rewrite(F, SizeOf(Char));
  BlockWrite(F, Pointer(S)^, Length(S));
  CloseFile(F);
end;
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
procedure TForm1.Button1Click(Sender: TObject);
const
  Fn = 'file.txt';
var
  Fs : TFileStream;
  S : String;
begin
  S := Memo1.Text;
  Fs := TFileStream.Create(Fn, fmCreate or fmShareDenyWrite);
  Fs.Write(Pointer(S)^, Length(S) * SizeOf(Char));
  Fs.Free;
end;
Дополнительные пояснения: если в качестве буфера мы используем тип String или PChar, то надо иметь в виду, что и String и PChar - это не сам буфер, а указатели на буфер:
Delphi
1
2
3
4
5
6
7
var
  //Это лишь указатель на буфер. А сам буфер обозначается так: Pointer(SBuf)^
  SBuf : String;
  //Это тоже указатель на буфер. Сам буфер обозначается так: PchBuf^
  PchBuf : PChar;
begin
  ...
0
0 / 0 / 0
Регистрация: 12.12.2010
Сообщений: 9
16.12.2010, 13:32  [ТС] 4
Цитата Сообщение от Vangok Посмотреть сообщение
Потому что тип переменной buf PChar а надо String;
нет, причина не в этом. (я это пробовал)
0
16.12.2010, 13:32
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
16.12.2010, 13:32
Помогаю со студенческими работами здесь

Что с кодировкой?
Добрый день, разбираюсь с кодировкой. От чего может быть такое: в php - файле задано: <meta...

Что-то с кодировкой
первый раз с таким встречаюсь, половина букв нормальные-половина нет. как это поправить?

Что-то с кодировкой?
Всем доброго времени. Windows7 x64 стоит Apache, UserGate, Kerio Connect. В общем проблемы...

Что с кодировкой?
Помогите пожалуста. Возникла такая проблема с кодировкой. Я написал сайт. На сервере работает...

Что-то с кодировкой
Доброго времени суток! Решил такую задачку: #include <stdio.h> #define MAXLINE 1000 int...

Что происходит с кодировкой?
Изначально была какая-то шведская кодировка, я её изменил на utf8-general-ci, но всё равно вопросик...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru