Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на Delphi


Информационный Канал Subscribe.Ru


RusFAQ.ru: Программирование на C++ Builder / Delphi

Выпуск № 231
от 16.10.2003, 20:50

Администратор:
Имя: Калашников О.А.
URL: Информационный ресурс
ICQ: 68951340
Россия, Москва
О рассылке:
Задано вопросов: 1034
Отправлено ответов: 2098
Активность: 202.9 %
[Задать вопрос >>][Регистрация эксперта >>]
[Поиск в базе][Обсудить на форуме]


 Список экспертов, ответы которых опубликованы в данном выпуске

Marouder
Статус: Профессиональный
Общий рейтинг: 123.1
URL: Первый Хабаровский Форум
Телефон: (4212) 21-93-65
[Подробней >>]
Cybernetic Creature
Статус: Профессиональный
Общий рейтинг: 128.97
URL: В разработке
[Подробней >>]
sir henry
Статус: Опытный
Общий рейтинг: 156.52
[Подробней >>]
 
CJ
Статус: Доверительный
Общий рейтинг: 127.55
[Подробней >>]
Boriss
Статус: Доверительный
Общий рейтинг: 136
[Подробней >>]
THE_PRO
Статус: Доверительный
Общий рейтинг: 141.73
[Подробней >>]
 
vitya
Статус: Профессиональный
Общий рейтинг: 108.07
[Подробней >>]
Jact M Anchorite
Статус: Доверительный
Общий рейтинг: 119.51
[Подробней >>]


 Краткий перечень вопросов

Вопрос № 1014. Как мне перекодировать текст из Win в Dos, и наоборот. Т.е. речь идет о кодировке, используя компоне... (ответов: 5)
Вопрос № 1015. Приветствую уважаемых экспертов! Мне нужно в проге на Delphi уметь динамически создавать БД. То есть... (ответов: 4)
Вопрос № 1016. Добрый вечер. Почему не работает следующие строчки? Как устранить ошибку?... (ответов: 6)
Вопрос № 1017. Здравствуйте, Уважаемые Эксперты! Возникла такая проблема: написал я программу которая работает с SQ... (ответов: 2)

Вопросов: 4, ответов: 17


 Вопрос № 1014

Как мне перекодировать текст из Win в Dos, и наоборот. Т.е. речь идет о кодировке, используя компонент TMemo.


Приложение:


Вопрос отправлен: 11.10.2003, 20:55
Отправитель: Стафеев Сергей

[Следующий вопрос >>] [Список вопросов]

Отвечает Marouder

Добрый день, Стафеев Сергей!
Используй функции CharToOem,CharToOemBuff,OemToChar,OemToCharBuff.

Ответ отправлен: 14.10.2003, 07:39
Отправитель: Marouder


Отвечает Cybernetic Creature

Здравствуйте, Стафеев Сергей!
procedure WinToDos;
var
Src, Str: PChar;
begin
Src := Memo1.Lines.GetText; //Берем текст из TMemo как тип PChar
CharToOem(Src, Str); //API функция для перевода текста
Memo2.Lines.Text := StrPas(Str);//Записываем назад
end;
procedure DosToWin;
var
Src, Str: PChar;
begin
Src := Memo1.Lines.GetText; //Берем текст из TMemo как тип PChar
OemToChar(Src, Str); //API функция для перевода текста
Memo2.Lines.Text := StrPas(Str);//Записываем назад
end;


Ответ отправлен: 13.10.2003, 19:19
Отправитель: Cybernetic Creature


Отвечает sir henry

Здравствуйте, Стафеев Сергей!
У TMemo, как и у всякого производного компонента от TControl, есть свойство Font, у которого, в свою очередь, есть свойство Charset. Оно позволяет просматривать ОЕМ и ANSI тексты без перекодировки вручную.
Font.Charset:=DEFAULT_CHARSET;{Кодировка по умолчанию, т.е. ANSI или WINDOWS}
Font.Charset:=OEM_CHARSET;{Кодировка ОЕМ, т.е. DOS}

Ответ отправлен: 13.10.2003, 06:06
Отправитель: sir henry


Отвечает CJ

Здравствуйте, Стафеев Сергей!
Надо использовать простой алгоритм с ASCII!

Ответ отправлен: 12.10.2003, 21:38
Отправитель: CJ


Отвечает Boriss

Добрый день, Стафеев Сергей!
Свойство TMemo.Font.CharSet определяет кодировку при вводе, в частности.
Свойство OEMConvert: Boolean; определяет, нужно ли производить конвертирование символов при вводе
А для преобразования в Delphi создано много функций. В D7 есть, например, в модуле Windows много функций для работ со строками CharToOem, ... в модуле SusUtils. Справка, по нему плохая (у меня, хотя бы), так что лучше его распечатать. Там много чего интересного


Ответ отправлен: 15.10.2003, 13:05
Отправитель: Boriss


 Вопрос № 1015

Приветствую уважаемых экспертов!
Мне нужно в проге на Delphi уметь динамически создавать БД.
То есть программно создавать всю структуру БД. Вариант с текстовыми файлами, или файлами записей откладывается - нужна поддержка SQL, т.к. данные в базах обещают быть черезчур замороченными, и это будет неудобно.
Плиз, скажите, какие БД целесообразно использовать, и где можно взять инфу по ним...
З.ы. да, необходимо чтобы данные базы не были такими открытыми, как в xml... Хотя я не уверен, что в xml всегда один и тот же формат, вообще в БД не силен :((

--
С уважением,
Нарх



Вопрос отправлен: 12.10.2003, 19:43
Отправитель: Narh (narh@relcom.kz)

[Следующий вопрос >>] [Список вопросов]

Отвечает THE_PRO

Приветствую Вас, Narh!
Mojesh ispolzovat IB, Oracle...
Qlavnoye sozday pustuyu bazu,
a potom sozdavay tablitsi s pomoshyu SQL!
Sovetuyu ispolzovat komponenti s paneley
"InterBase"-"InterBase Admin" ili je "dbExpress"

Ответ отправлен: 13.10.2003, 17:20
Отправитель: THE_PRO


Отвечает Cybernetic Creature

Добрый день, Narh!
Посмотрите компонент TQuery

Ответ отправлен: 13.10.2003, 19:19
Отправитель: Cybernetic Creature


Отвечает sir henry

Здравствуйте, Narh!
Это довольно большой объем информации, поэтому зайдите на сайт www.delphimaster.ru. Там есть большая подборка статей и FAQ'ов по многим вопросам. Еще было бы желательно купить книгу по разработке БД в Delphi. Мне, например, понравилась книга Фаронова. На www.bolero.ru ьщжно заказать его книгу "Программирование баз данных в Delphi 7. Учебный курс".
Если давать общий совет, то при создании БД программными средствами наиболее просто использовать язык SQL. Тогда создание таблицы будет описано командой, что-то типа:
CREATE TABLE MyTable (field1 C(20), field2 I)
в данном примере создаются таблица и два поля в нем - типа char на 20 символов и целочисленное.
Можно использовать при создании БД и средства Дельфи (объектноориентированые), но там синтаксис более сложный, поэтому лучше это делать поминутно заглядывая в книжку :).

Ответ отправлен: 13.10.2003, 06:41
Отправитель: sir henry


Отвечает Boriss

Доброе время суток, Narh!
Конечно, можно. Это во всех учебниках описано. Можно взять и в справке пример. Перенеси на форму
TTable. Перейди в редактор, поставть курсор на TTable, нажми F1. Получишь справку, там выбери
Methods и в них CreateTable. Если на агицком трудно, то скачай delphistfaq.chm (вроде бы на http://www.forum.vingrad.ru/index.php?act=SF&f=32).
Там по русски написано


Ответ отправлен: 15.10.2003, 13:42
Отправитель: Boriss


 Вопрос № 1016

Добрый вечер.
Почему не работает следующие строчки? Как устранить ошибку?


Приложение:


Вопрос отправлен: 12.10.2003, 19:54
Отправитель: Loop

[Следующий вопрос >>] [Список вопросов]

Отвечает sir henry

Здравствуйте, Loop!
С формальной точки зрения, основываясь только на приведенном коде, у Вас все правильно. Возможно не удается создать файл на диске. Без текста ошибки трудно судить. Попробуйте ввести проверку на создание файла:
...

...
ofstream of("c:1.txt");
if(!of)
{
MessageBox(0,"Не удалось создать файл","Ошибка", MB_OK);
exit(1);
}
of << Edit1->Text << " ";
...

Ответ отправлен: 14.10.2003, 09:38
Отправитель: sir henry


Отвечает Marouder

Добрый день, Loop!
ofstream не поддерживает AnsiString.
Нужно так:
of << Edit1->Text.c_str() << "";

Ответ отправлен: 14.10.2003, 07:39
Отправитель: Marouder


Отвечает vitya

Добрый день, Loop!
нужен двойной backslash
ofstream of("c:\1.txt");

Ответ отправлен: 13.10.2003, 09:18
Отправитель: vitya


Отвечает Jact M Anchorite

Добрый день, Loop!
А слабо COUT-ом воспользоваться? :)


Ответ отправлен: 13.10.2003, 08:18
Отправитель: Jact M Anchorite


Отвечает Cybernetic Creature

Здравствуйте, Loop!
of.get
of.put
of.read
of.write

Ответ отправлен: 13.10.2003, 19:19
Отправитель: Cybernetic Creature


Отвечает THE_PRO

Добрый день, Loop!
ofstream of("c:1.txt");
of.put(char ch);
of << ... ne pravilno!

Ответ отправлен: 13.10.2003, 17:16
Отправитель: THE_PRO


 Вопрос № 1017

Здравствуйте, Уважаемые Эксперты!
Возникла такая проблема: написал я программу которая работает с SQL-ой базой (SQL Server 2000), на моей машине стоит этот самый сервер и прога работает нормально... установил базу на сервер (другая машина), юзеру почтавил клиентскую часть и прогу... возникла такая проблема, что прога стала зависать на проведении транзакций... в чем может быть дело? При этом на моем компе с той же базой работает нормально... :(
Заранее спасибо!



Вопрос отправлен: 13.10.2003, 15:12
Отправитель: VDR

[Следующий вопрос >>] [Список вопросов]

Отвечает THE_PRO

Здравствуйте, VDR!
InterBase i to luchshe, a Oracle voobshe...!
Eto qlyuuchit tvoy SQL Server, ne udevitelno, eto je M$!

Ответ отправлен: 13.10.2003, 17:25
Отправитель: THE_PRO


Отвечает Cybernetic Creature

Доброе время суток, VDR!
Это наверное проблема системы. Переустановка Винды должно помочь

Ответ отправлен: 13.10.2003, 19:20
Отправитель: Cybernetic Creature



Форма отправки вопроса

Внимание!
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+ или отправлять вопросы с сайта по адресу: http://rusfaq.ru/cgi-bin/Message.cgi.

(C) 2002-2003 Команда RusFAQ.ru.

 Персональные данные

Ваше имя:

Ваш e-mail:

Опубликовать мой e-mail в рассылке


 Вопрос и дополнение

Ваш вопрос:


Приложение (если необходимо):


Получить ответов:


 Выбор рассылки

Программисту
Assembler (31)
C / C++ (31)
Perl (7)
Builder / Delphi (23)
Pascal (23)
Basic / VBA (8)
Java / JavaScript (8)
PHP (12)
Криптография (9)
WinAPI (15)
Пользователю
Windows 95/98/Me (53)
Windows NT/2000/XP (62)
"Железо" (37)
Поиск информации (27)
Администратору
Windows NT/2000/XP (38)
Linux / Unix (18)
Юристу
Гражданское право (11)
Семейное право (8)
Трудовое право (8)
КоАП (8)

Отправить вопрос всем экспертам выбранной рассылки.




Задать вопрос | Регистрация эксперта | Поиск в базе | Чат | Форумы | Новости
Проект экспертов RusFAQ.ru | Фотоальбом | Virus.RusFAQ.ru | Администрирование
Профессиональная WEB-Студия B.I.T.


Яндекс цитирования
© 2001-2003 Россия, Москва. Авторское право: Калашников О.А.

http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное