gpt4 book ai didi

c# - 如何在 C# 中将字符串转换为 cfstring

转载 作者:行者123 更新时间:2023-12-05 07:59:14 24 4
gpt4 key购买 nike

我有以下代码将 String 转换为 CFString 和 backwarts:

string path = @"C:\Users\ayi\Desktop\Failed\AngryBirds.ipa";

IntPtr p_path = __CFStringMakeConstantString(path);

CoreFoundation.CFString cfstring = new CoreFoundation.CFString(p_path);

string result = cfstring.ToString();

问题是 path != result 其中 path 包含一些汉字,如 @"C:\Users\ayi\Desktop\中文\AngryBirds。 ipa";

如何在C#中将包含中文的字符串转换为cfstring?

最佳答案

您可以使用 CFStringCreateWithCString 函数将类 C 语言的字符串转换为 CFString:

CFStringCreateWithCString(kCFAllocatorDefault, myCString, kCFStringEncodingUTF8);

然后您需要了解如何将 C# 字符串转换为类 C 语言的字符串。不幸的是,我不是 C# 开发人员,所以这里有一个看起来不错的链接:

C++ .NET convert System::String to std::string

注意:使用 std::string::c_str() 将 C++ 字符串转换为类 C 字符串 myCppString.c_str()。这个操作主要是访问内存,所以很快。

关于c# - 如何在 C# 中将字符串转换为 cfstring,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22101464/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com