Модераторы: Snowy, MetalFan, bems, Poseidon
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Использую FileWrite. Невнятное содержимое файла. 
:(
    Опции темы
ilyaa
Дата 3.8.2009, 23:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 3.8.2009

Репутация: нет
Всего: нет



использую для вывода лога такой кусок:
Код

//mess :='сообщение'; 

procedure Log(Const Mess: string); 
Const w:word = $0A0D;
begin
   if Fil = INVALID_HANDLE_VALUE then exit;
   try
      FileWrite(Fil, Mess, Length(Mess));
      FileWrite(Fil,  w, 2);
   except
   end;
end;


и такой

Код

procedure Log(Const Mess: string);
Const w:word = $0A0D; var s:Pchar;
begin
   if Fil = INVALID_HANDLE_VALUE then exit;
   try
      s:=pchar(mess);
      FileWrite(Fil, s[0], Length(s));
      FileWrite(Fil,  w, 2);
   except
   end;
end;



а в файле вот такая абракадабра. И ничем не могу ее превратить во внятный текст. 
A>>1I
A>>1I
A>>1I
A>>1I

Как то можно писать файл сразу в ansi кодировке? Не используя WriteLN.


M
THandle
Модератор: используйте подсветку кода!

PM MAIL   Вверх
mr.Anderson
Дата 3.8.2009, 23:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


iOS Lead Developer
****


Профиль
Группа: Участник Клуба
Сообщений: 3374
Регистрация: 20.12.2004
Где: далеко

Репутация: 3
Всего: 128



WriteLn - очень удобный метод в данном случае. Но если он не подходит, можно использовать TWriter/TReader.

Подробно и понятно расписано здесь: http://forum.vingrad.ru/forum/topic-250409...ader/index.html


--------------------
user posted image

user posted image
PM MAIL ICQ Skype   Вверх
THandle
Дата 4.8.2009, 00:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Хранитель Клуба
Group Icon
Награды: 1



Профиль
Группа: Админ
Сообщений: 3639
Регистрация: 31.7.2007
Где: Moscow, Dubai

Репутация: 50
Всего: 372



Код

procedure Log(const Mess: AnsiString);
const
  W: Word = $0A0D;
var
  Fil: Integer;
begin
  Fil := FileCreate('C:\Test1.txt', fmCreate);
  if Fil = INVALID_HANDLE_VALUE then
    Exit;
  try
    FileSeek(Fil, 0, soFromEnd);
    FileWrite(Fil, Mess[1], Length(Mess));
    FileWrite(Fil, w, 2);
  finally
    FileClose(Fil);
  end;
end;


Добавлено через 1 минуту и 2 секунды
Это пример с вечным пересозданием файла. Создавать надо один раз)

Добавлено через 1 минуту и 52 секунды
Кстати насчет логгеров. Помнится где-то год назад ama_kid выкладывал свой готовый код на эту тему. Если память мне не изменяет.
PM   Вверх
ilyaa
Дата 4.8.2009, 18:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 3.8.2009

Репутация: нет
Всего: нет



Добавлено через 1 минуту и 2 секунды
Это пример с вечным пересозданием файла. Создавать надо один раз)

Для одного вызова то же самое.
PM MAIL   Вверх
dumb
Дата 5.8.2009, 01:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


sceloglauxalbifacies
****


Профиль
Группа: Экс. модератор
Сообщений: 2929
Регистрация: 16.6.2006

Репутация: 3
Всего: 158



ilyaa, ты в файл Unicode-строку записываешь.

ключевой момент:
Цитата(THandle @  4.8.2009,  01:45 Найти цитируемый пост)
procedure Log(const Mess: AnsiString);

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Для новичков"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0679 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.