|
|
|
Помогите с функцией AnsiToNative из C++Builder'a
|
|||
|---|---|---|---|
|
#18+
Написал программу на C++Builder, которая делает некоторые проверки и выдает отчет в виде текстового файла. Файл получается (естественно) в кодировке Win. На компьютерах пользователей, кому отправляют отчет, может стоять и "чистая" DOS. Кроме того, надо расчитывать на наличие бабулек, умеющих нажимать только F3 в Нортоне и приходящих в шок от самой необходимости работать не компьютере Теперь собственно вопрос: В хелпе к C++Builder нашел, что подобные преобразования (Win->DOS) можно выполнить функцией AnsiToNative, но примера ее использования там нет. А сам я не "догоняю" с параметрами, которые надо ей передать Помогите, плз!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2004, 06:55 |
|
||
|
Помогите с функцией AnsiToNative из C++Builder'a
|
|||
|---|---|---|---|
|
#18+
Лучше использовать CharToOem: HELP The CharToOem function translates a string into the OEM-defined character set. (OEM stands for original equipment manufacturer.) This function supersedes the AnsiToOem function. BOOL CharToOem( LPCTSTR lpszSrc, // pointer to string to translate LPSTR lpszDst // pointer to translated string ); Parameters lpszSrc Pointer to the null-terminated string to translate. lpszDst Pointer to the buffer for the translated string. If the CharToOem function is being used as an ANSI function, the string can be translated in place by setting the lpszDst parameter to the same address as the lpszSrc parameter. This cannot be done if CharToOem is being used as a wide-character function. Return Values The return value is always nonzero. Можно использовать и AnsiString, т.е. например есть строка src и ее надо перегнать в cp866: Код: plaintext 1. 2. Ну и конечно консоль должна быть настроена на cp866. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2004, 08:22 |
|
||
|
Помогите с функцией AnsiToNative из C++Builder'a
|
|||
|---|---|---|---|
|
#18+
_SaniaЛучше использовать CharToOem:... Я конечно дико извиняюсь, но разве CharToOem не из VC++? Это я тоже прочитал в MSDN'e... А я пишу на Билдере, там такие штучки не описаны... Там написано следующее: Borland C++Builder Help AnsiToNative Converts an AnsiString from the ANSI character set to the character set associated with a given locale. extern PACKAGE char * __fastcall AnsiToNative(void * Locale, const AnsiString AnsiStr, char * NativeStr, int MaxLen); Description Call AnsiToNative to convert a string represented in the ANSI character set (used internally by Windows) to the character set associated with the database locale specified by the Locale parameter. The resulting string is copied into the buffer pointed to by the NativeStr parameter. Use the MaxLen parameter to specify the size of this buffer. If the buffer is too small to contain all characters in the converted version of AnsiStr, the returned value is truncated. AnsiToNative returns a pointer to NativeStr. Use AnsiToNative to convert strings typed by the user into the character set used by a database table. Вот меня и интересует пример использования этой функции, особенно в части задания void *Locale... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2004, 08:36 |
|
||
|
Помогите с функцией AnsiToNative из C++Builder'a
|
|||
|---|---|---|---|
|
#18+
Можешь не извиняться , это из WinApi, и использовать ее можно и BCB. OemToChar и OemToCharBuf использовать проще, к томуже OemToCharBuf может перегнать сразу весь файл (ну если он в пределах пары мегабайт) и не надо с отдельными строками парится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2004, 08:51 |
|
||
|
Помогите с функцией AnsiToNative из C++Builder'a
|
|||
|---|---|---|---|
|
#18+
_SaniaМожешь не извиняться , это из WinApi, и использовать ее можно и BCB. OemToChar и OemToCharBuf использовать проще, к томуже OemToCharBuf может перегнать сразу весь файл (ну если он в пределах пары мегабайт) и не надо с отдельными строками парится. Thanks! It's cool!!! Однако, "если звезды зажигают, значит это кому-нибудь нужно"... Поэтому, все-таки, хотелось бы услышать ответ по сабж... Так, для увеличения образованности ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.10.2004, 09:31 |
|
||
|
|

start [/forum/topic.php?fid=57&msg=32758267&tid=2034189]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
39ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
32ms |
get tp. blocked users: |
1ms |
| others: | 210ms |
| total: | 317ms |

| 0 / 0 |
