Example #1
0
        public static void SetICUDataFile(string icudatafile)
        {
            lock (s_dataLoadLock)
            {
                if (s_isDataLoaded)
                {
                    return;
                }
            }
            if (s_isDataLoaded)
            {
                return;
            }
            s_isDataLoaded = true;
            s_icuDataFile  = icudatafile;
            //----------
            int major, minor, revision;

            NativeTextBreakerLib.MyFtLibGetFullVersion(out major, out minor, out revision);
            if (dataHolder == null)
            {
                dataHolder = new InMemoryIcuDataHolder(icudatafile);
                dataHolder.Use();
            }
        }
Example #2
0
        public static void Test1()
        {
            int major, minor, revision;

            NativeTextBreakerLib.MyFtLibGetFullVersion(out major, out minor, out revision);
            NativeTextBreaker.SetICUDataFile(@"icudt57l\icudt57l.dat");

            string            str         = "ABCD EFGH IJKL\0";
            var               textBreaker = new NativeTextBreaker(TextBreakKind.Word, "en-US");
            List <SplitBound> tokens      = new List <SplitBound>();

            textBreaker.DoBreak(str, splitBound =>
            {
                tokens.Add(splitBound);
            });
        }