我已经从rtf文件中提取了文本数据,CP 1049中有字符串
lang1049''ea''e0''f6''e0''ef''e8
我试图将其解码为字符串,但收到的不是字符串我知道什么,而是其他字符
declare @out table (id int not null identity, string varchar(128) collate Cyrillic_General_CI_AS)
insert into @out(string) select (char(0xEA)+char(0xE0)+char(0xF6)+char(0xE0)+char(0xEF)+char(0xE8))
select * from @out
GO
字符串应该是'кацапи'。
如何正确地做?
可以使用NCHAR()
NCHAR
insert into @out(string) select NCHAR(0xEA)+NCHAR(0xE0)+NCHAR(0xF6)+NCHAR(0xE0)+NCHAR(0xEF)+NCHAR(0xE8)
或者,对于UNICODE字符,您可以使用convert()insert into @out(string) select convert(varchar(128), 0xEA)+convert(varchar(128), 0xE0)+convert(varchar(128), 0xF6)+convert(varchar(128), 0xE0)+convert(varchar(128), 0xEF)+convert(varchar(128), 0xE8)