Это правда? Я хочу использовать WIN32_FIND_DATA для C#. Я хочу проверить, есть ли в приведенном ниже коде какие-либо ошибки для C#.
Пожалуйста, покажите мне другой способ, если вы найдете другой код получше.
Привет всем, привет. бродяга bejafoanc nsfkck Это правда? Я хочу использовать WIN32_FIND_DATA для C#. Я хочу проверить, есть ли в приведенном ниже коде какие-либо ошибки для C#.
Пожалуйста, покажите мне другой способ, если вы найдете другой код получше.
Привет всем, привет. бродяга bejafoanc nsfkck
class Program
{
// Khai báo P/Invoke cho MultiByteToWideChar
[DllImport("kernel32.dll", CharSet = CharSet.Auto, SetLastError = true)]
public static extern int MultiByteToWideChar(
uint CodePage,
uint dwFlags,
[MarshalAs(UnmanagedType.LPStr)] string lpMultiByteStr,
int cbMultiByte,
[MarshalAs(UnmanagedType.LPWStr)] StringBuilder lpWideCharStr,
int cchWideChar);
static void Main()
{
string multiByteStr = "Hello, World!";
int codePage = 65001; // CP_UTF8 (UTF-8)
// Gọi lần đầu để lấy kích thước chuỗi wide char cần thiết
int sizeRequired = MultiByteToWideChar((uint)codePage, 0, multiByteStr, -1, null, 0);
if (sizeRequired == 0)
{
Console.WriteLine("Lỗi khi lấy kích thước chuỗi.");
return;
}
// Tạo buffer cho chuỗi wide char
StringBuilder wideCharStr = new StringBuilder(sizeRequired);
// Thực hiện chuyển đổi từ multi-byte sang wide char
int result = MultiByteToWideChar((uint)codePage, 0, multiByteStr, -1, wideCharStr, sizeRequired);
if (result == 0)
{
Console.WriteLine("Lỗi khi chuyển đổi chuỗi.");
return;
}
// In ra chuỗi kết quả
Console.WriteLine("Wide Char String: " + wideCharStr.ToString());
}
}
C++
#include
#include
int main() {
const char* multiByteStr = "Hello, World!";
int len = MultiByteToWideChar(CP_UTF8, 0, multiByteStr, -1, NULL, 0);
wchar_t* wideCharStr = new wchar_t[len];
MultiByteToWideChar(CP_UTF8, 0, multiByteStr, -1, wideCharStr, len);
std::wcout
Подробнее здесь: https://stackoverflow.com/questions/790 ... a-its-true
WIN32_FIND_DATA это правда [закрыто] ⇐ C#
Место общения программистов C#
1729480388
Anonymous
Это правда? Я хочу использовать WIN32_FIND_DATA для C#. Я хочу проверить, есть ли в приведенном ниже коде какие-либо ошибки для C#.
Пожалуйста, покажите мне другой способ, если вы найдете другой код получше.
Привет всем, привет. бродяга bejafoanc nsfkck Это правда? Я хочу использовать WIN32_FIND_DATA для C#. Я хочу проверить, есть ли в приведенном ниже коде какие-либо ошибки для C#.
Пожалуйста, покажите мне другой способ, если вы найдете другой код получше.
Привет всем, привет. бродяга bejafoanc nsfkck
class Program
{
// Khai báo P/Invoke cho MultiByteToWideChar
[DllImport("kernel32.dll", CharSet = CharSet.Auto, SetLastError = true)]
public static extern int MultiByteToWideChar(
uint CodePage,
uint dwFlags,
[MarshalAs(UnmanagedType.LPStr)] string lpMultiByteStr,
int cbMultiByte,
[MarshalAs(UnmanagedType.LPWStr)] StringBuilder lpWideCharStr,
int cchWideChar);
static void Main()
{
string multiByteStr = "Hello, World!";
int codePage = 65001; // CP_UTF8 (UTF-8)
// Gọi lần đầu để lấy kích thước chuỗi wide char cần thiết
int sizeRequired = MultiByteToWideChar((uint)codePage, 0, multiByteStr, -1, null, 0);
if (sizeRequired == 0)
{
Console.WriteLine("Lỗi khi lấy kích thước chuỗi.");
return;
}
// Tạo buffer cho chuỗi wide char
StringBuilder wideCharStr = new StringBuilder(sizeRequired);
// Thực hiện chuyển đổi từ multi-byte sang wide char
int result = MultiByteToWideChar((uint)codePage, 0, multiByteStr, -1, wideCharStr, sizeRequired);
if (result == 0)
{
Console.WriteLine("Lỗi khi chuyển đổi chuỗi.");
return;
}
// In ra chuỗi kết quả
Console.WriteLine("Wide Char String: " + wideCharStr.ToString());
}
}
C++
#include
#include
int main() {
const char* multiByteStr = "Hello, World!";
int len = MultiByteToWideChar(CP_UTF8, 0, multiByteStr, -1, NULL, 0);
wchar_t* wideCharStr = new wchar_t[len];
MultiByteToWideChar(CP_UTF8, 0, multiByteStr, -1, wideCharStr, len);
std::wcout
Подробнее здесь: [url]https://stackoverflow.com/questions/79092472/win32-find-data-its-true[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия