我需要从List中确定正确的拼写特定单词。如果单词出错,我会在文件中写入。我使用了SpellChecker类,这是我的代码:
CREATE TABLE groups (
id integer NOT NULL,
tempref character varying(255) DEFAULT NULL::character varying,
prorated_basis boolean NOT NULL,
fixed_price_amount double precision,
is_indexed boolean,
pricing_grid pricing[],
label character varying(255) NOT NULL
);
CREATE SEQUENCE groups
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1;
ALTER SEQUENCE groups_id_seq OWNED BY groups.id;
ALTER TABLE ONLY pricing_groups ALTER COLUMN id SET DEFAULT nextval('groups_id_seq'::regclass);
ALTER TABLE ONLY groups
ADD CONSTRAINT groups_pkey PRIMARY KEY (id);
但是在同一个词上,如果我设置List(带有单词)或只有一个单词,它就可以使用不同的单词。 在进程调试中,我看到,CheckWord在一种情况下给我真实,在另一种情况下为false。但我确定这是一个字。
public class SpellChecker : IDisposable
{
System.Type TWord = null; object com_app = null;
private static SpellChecker Checker = new SpellChecker();
private SpellChecker()
{
try
{
TWord = Type.GetTypeFromProgID("Word.Application");
com_app = Activator.CreateInstance(TWord);
}
catch { com_app = null; }
}
public static SpellChecker GetChecker() { return Checker; }
public void Dispose()
{
if (com_app != null)
{
object[] arg = { null, null, null };
TWord.InvokeMember("Quit", BindingFlags.InvokeMethod,
null, com_app, arg);
com_app = null;
}
}
public bool CheckWord(string word)
{
object[] arg = { word };
return (bool)TWord.InvokeMember("CheckSpelling",
BindingFlags.InvokeMethod, null, com_app, arg);
}
}
答案 0 :(得分:0)
我意识到了。在某些情况下,CheckWord给我错误的答案。例如,我需要检查俄语和英语单词。如果我给List list = List(){“GSM \ MPG4 \ LTE”,“Привет”},那么在列表中的第一个单词上它称为true,但第二个单词将为false。