标签: non-unicode

导入包错误 - 无法在Unicode和非Unicode字符串数据类型之间进行转换

我使用SQL Server 2008在我的计算机上创建了一个dtsx包.它将数据从分号分隔的csv文件导入到一个表中,其中所有字段类型都是NVARCHAR MAX.

它适用于我的计算机,但它需要在客户端服务器上运行.每当他们使用相同的csv文件和目标表创建相同的包时,他们就会收到上述错误.

我们已经逐步完成了包的创建,一切似乎都没问题.映射都是正确的,但是当它们在最后一步中运行包时,它们会收到此错误.他们正在使用SQL Server 2005.

任何人都可以建议从哪里开始寻找这个问题?

unicode types ssis sql-server-2005 non-unicode

64
推荐指数
6
解决办法
24万
查看次数

SSIS在Unicode和非Unicode错误之间转换

我有一个ssis包,我使用连接到SQL Server 2005表的OLEDB源.除日期列之外的所有列都是NVARCHAR(255).我正在使用Excel目标并使用SQL语句在Excel工作簿中创建工作表,SQL位于Excel连接管理器(实际上是创建工作表的创建表语句)中,并且是从列的映射派生而来的. D B.

无论我做了什么,我都会在源和目标之间获得这个unicode - >非unicode转换错误.尝试在S> D之间转换为字符串[DT_STR],删除它,将SQL表VARCHAR更改为NVARCHAR并仍然得到此flippin错误.

因为我使用SQL语句在Excel中创建工作表,所以我没有看到任何方法来实际预定义Excel工作表中列的数据类型.我想这将是一个默认的元数据,但我不知道.

因此,在我的SQL表目的地和使用此SSIS sql语句创建Excel表之间如何才能阻止此错误出现?

我的错误是:

数据流任务出错[OLE DB源[1]]:列"MyColumn"无法在unicode和非unicode字符串数据类型之间进行转换.

对于所有nvarchar列.

感谢任何帮助

谢谢

安德鲁

unicode ssis non-unicode

53
推荐指数
6
解决办法
24万
查看次数

libc ++ vs VC++:可以使用wstring_convert完成非UTF转换吗?

在C++ 11的std::wstring_convert作品极大*为标准的UTF-8 < - > UTF-16/UCS2/UCS4转换.但是,当我尝试使用不是from的facet实例化wstring_convert或wbuffer_convert时<codecvt>,它没有按预期工作:

// works as expected
std::wstring_convert<std::codecvt_utf8<wchar_t>> ucs4conv;

// Now, by analogy, I want to try this:
std::wstring_convert<std::codecvt<wchar_t, char, std::mbstate_t>> gbconv(
        new std::codecvt_byname<wchar_t, char, std::mbstate_t>("zh_CN.gb18030"));
Run Code Online (Sandbox Code Playgroud)

Clang ++错误地说"在~wstring_convert中调用codecvt <>的受保护的析构函数"

Visual Studio允许它(尽管它缺少该语言环境,但这是另一个故事),因为它的wstring_convert将facet指针的生命周期管理作为成员的一个区域设置对象进行处理,并且locales知道如何删除指向所有facet的指针.

Visual Studio是正确的,libc ++是错误的吗?

*在clang ++ - 2.9/libc ++ - svn和Visual Studio 2010 EE SP1中实现,以下示例适用于两者,但不是在GCC中,遗憾的是:https://ideone.com/hywz6

c++ non-unicode c++11

8
推荐指数
1
解决办法
1686
查看次数

Windows如何识别非Unicode应用程序?

我正在构建一个MFC C++应用程序,在Visual Studio中选择"使用Unicode字符集".我有UNICODE定义,我的CStrings是16位,我处理其中包含日文字符的文件名,等等.但是,当我把包含日文字符的Unicode字符串放在CComboBox中时(使用AddString),它们显示为????? .

我正在运行Windows XP Professional x64(英文版).如果我使用Windows控制面板区域和语言选项,高级选项卡,并将非Unicode程序的语言设置为日语,我的组合框看起来正确.

所以,我希望我的组合框看起来正确,我想了解为什么"非Unicode程序的语言"设置正在改变我的Unicode程序的行为.还有什么我应该做的告诉Windows我的应用程序是一个Unicode应用程序吗?

谢谢你的帮助!

c++ unicode mfc non-unicode

5
推荐指数
1
解决办法
2210
查看次数

默认的VB6字符集是什么?

我们有一个用Java编写的应用程序,可以读取VB6应用程序生成的一些文本。问题是:此VB6应用程序使用一些特殊字符(例如ç,ã,á)生成此输出,而这些字符在什么字符集中是不知道的。

所以问题是:VB6是否使用默认字符集?哪有

vb6 unicode character-encoding non-unicode

5
推荐指数
1
解决办法
5693
查看次数

如何将 SQL Server 表中的 ANSII 字符修复为 UTF-8

我有一个数据导入过程,用于将 csv 文件中的数据导入到 SQL Server 中的表中。

\n\n

我注意到有些列包含一些重音字符。

\n\n

例如,我注意到数据库表中的以下文本

\n\n
\n

CAF\xc3\x83\xe2\x80\xb0

\n
\n\n

我在 Notepad++ 中打开一个新文件,将编码更改为 ANSI 并使用上述文本保存该文件。

\n\n

然后将编码改为UTF-8

\n\n

结果是:

\n\n
\n

CAF\xc3\x89

\n
\n\n

我不确定出了什么问题。但是有没有办法解决数据库表中的这个问题呢?

\n\n

我想在数据库表中显示相同的 CAF\xc3\x89 而不是 CAF\xc3\x83\xe2\x80\xb0

\n\n

因为当此列显示在网站上时,即使网页上的编码为 UTF-*,它仍然将字符串显示为 CAF\xc3\x83\xe2\x80\xb0,而不是 CAF\xc3\x89。

\n\n

我还检查了该列的排序规则类型:

\n\n
\n

SQL_Latin1_General_CP1_CI_AS

\n
\n\n

谢谢,

\n

sql-server utf-8 non-unicode

5
推荐指数
1
解决办法
2万
查看次数

为什么非Unicode应用程序系统区域设置使符号字符集的Unicode字体显示不正确?

我正在尝试显示Wingdings字体的Unicode字符(它的Unicode TrueType字体仅支持符号字符集).它使用相应的区域操作系统设置在我的Win7/64系统上正确显示:

  • 格式:俄语
  • 地点:俄罗斯
  • 系统区域设置(非Unicode应用程序的AKA语言):英语

但是,如果我将系统区域设置切换为俄语,则代码> 127的Unicode字符显示不正确(替换为框).

我的应用程序是在Visual Studio中使用Unicode Charset创建的,它只调用Unicode Windows API函数.

另外我注意到有几个Windows应用程序也会错误地使用符号字体(符号,Wingdings,Webdings等)显示这些字符,例如Notepad,Beyond Compare 3.但是WordPad和MS Office应用程序不会受到影响.

这是最小的代码片段(为简洁起见,跳过了资源清理):

LOGFONTW lf = { 0 };
lf.lfCharSet = SYMBOL_CHARSET;
lf.lfHeight = 50;
wcscpy_s(lf.lfFaceName, L"Wingdings");

HFONT f = CreateFontIndirectW(&lf);

SelectObject(hdc, f);

// First two chars displayed OK, 3rd and 4th aren't (replaced with boxes) if
// Non-Unicode apps language is NOT English.
TextOutW(hdc, 10, 10, L"\x7d\x7e\x81\xfc");
Run Code Online (Sandbox Code Playgroud)

所以问题是:为什么地狱非Unicode应用程序语言设置会影响Unicode应用程序?

什么是显示SYMBOL_CHARSET字体而不依赖于OS系统区域设置的正确(也是最简单)方法?

c++ unicode winapi fonts non-unicode

4
推荐指数
1
解决办法
1498
查看次数

何时使用Unicode(除了非unicode!)

我没有找到关于何时使用Unicode的更多(简明)信息.我知道很多人说最佳实践是始终使用Unicode.但是Unicode字符串DO具有更多的内存占用.我是否正确地说,只有必须使用Unicode 时

  • 将内容打印到除本地以外的屏幕(例如调试)使用.
  • 通常,通过网络发送任何类型的文本,其中两端位于不同的区域/国家/地区
  • 当你不确定使用哪个时

我认为,如果有人解释 Unicode实际发生的基础知识(简洁),这将是有益的...我是正确的说,在以下情况下事情变得混乱:

  • 物理(字节)字符串使用不同于发件人的字符串表示(代码页,其他...这已经是详细的,虽然有趣)发送到机器.

上下文在编程语言中使用Unicode(比如C++),但我希望这个问题的答案可以用于任何编码情况.
另外,我知道Unicode和NLS不是一回事,但说NLS意味着使用Unicode是否正确?

PS真棒网站

unicode non-unicode

3
推荐指数
1
解决办法
403
查看次数

Delphi - 获取Windows的默认非unicode字符集

我有一个Delphi 7应用程序.我需要能够获得非unicode程序的默认Windows字符集.我知道DEFAULT_CHARSET设置了它,但我需要确切地知道它是哪个charset,以便我可以将它与其他字符集进行比较.这可能吗?怎么样?

谢谢!

delphi character-encoding non-unicode

3
推荐指数
1
解决办法
4870
查看次数

android地图标记的非ASCII标题

我希望能够添加一个标题只有非ASCII字符的标记:

        marker = map.addMarker(
            new MarkerOptions()
                .title("???")
                .position(latlng)
        );
Run Code Online (Sandbox Code Playgroud)

不幸的是,瓷砖没有显示,只有一个空的信息窗口.首先我认为希伯来字符一般存在问题,但它们看起来很好,因为如果标题的BEGINNING中有ASCII文本,那么它可以工作:

                .title("me ???")
Run Code Online (Sandbox Code Playgroud)

然而,当希伯来语开始时它不会:

                .title("??? me")
Run Code Online (Sandbox Code Playgroud)

android google-maps-markers non-unicode google-maps-android-api-2

2
推荐指数
1
解决办法
523
查看次数

对于任何字体,非unicode到Unicode转换!

我有一个html文件,文本以非unicode字体编码.我需要将该文件转换为unicode.我搜索了一个转换器.但是,大多数转换器仅适用于字体列表,而不适用于所有字体.

我的字体非常具体,文字是梵文脚本.我有文件,我有字体,现在,请建议我一个工具或技术.谢谢.

unicode non-unicode

-1
推荐指数
1
解决办法
4795
查看次数