Lucene.Net.Analysis.En.PorterStemmer: Ported demo code (but left it commented)
Project: http://git-wip-us.apache.org/repos/asf/lucenenet/repo Commit: http://git-wip-us.apache.org/repos/asf/lucenenet/commit/53ae7cd2 Tree: http://git-wip-us.apache.org/repos/asf/lucenenet/tree/53ae7cd2 Diff: http://git-wip-us.apache.org/repos/asf/lucenenet/diff/53ae7cd2 Branch: refs/heads/master Commit: 53ae7cd2f40d7c5d4e698949419efe1ce22214b2 Parents: ccc273f Author: Shad Storhaug <[email protected]> Authored: Thu Jul 6 05:51:16 2017 +0700 Committer: Shad Storhaug <[email protected]> Committed: Thu Jul 6 05:51:16 2017 +0700 ---------------------------------------------------------------------- .../Analysis/En/PorterStemmer.cs | 118 +++++++++++-------- 1 file changed, 68 insertions(+), 50 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/lucenenet/blob/53ae7cd2/src/Lucene.Net.Analysis.Common/Analysis/En/PorterStemmer.cs ---------------------------------------------------------------------- diff --git a/src/Lucene.Net.Analysis.Common/Analysis/En/PorterStemmer.cs b/src/Lucene.Net.Analysis.Common/Analysis/En/PorterStemmer.cs index 707c90c..8b472af 100644 --- a/src/Lucene.Net.Analysis.Common/Analysis/En/PorterStemmer.cs +++ b/src/Lucene.Net.Analysis.Common/Analysis/En/PorterStemmer.cs @@ -1,6 +1,8 @@ using Lucene.Net.Support; using Lucene.Net.Util; using System; +using System.Globalization; +using System.IO; using System.Diagnostics.CodeAnalysis; namespace Lucene.Net.Analysis.En @@ -813,55 +815,71 @@ namespace Lucene.Net.Analysis.En return dirty; } - /* Test program for demonstrating the Stemmer. It reads a file and - * stems each word, writing the result to standard out. - * Usage: Stemmer file-name - public static void main(String[] args) { - PorterStemmer s = new PorterStemmer(); - - for (int i = 0; i < args.length; i++) { - try { - InputStream in = new FileInputStream(args[i]); - byte[] buffer = new byte[1024]; - int bufferLen, offset, ch; - - bufferLen = in.read(buffer); - offset = 0; - s.reset(); - - while(true) { - if (offset < bufferLen) - ch = buffer[offset++]; - else { - bufferLen = in.read(buffer); - offset = 0; - if (bufferLen < 0) - ch = -1; - else - ch = buffer[offset++]; - } - - if (Character.isLetter((char) ch)) { - s.add(Character.toLowerCase((char) ch)); - } - else { - s.stem(); - System.out.print(s.toString()); - s.reset(); - if (ch < 0) - break; - else { - System.out.print((char) ch); - } - } - } - - in.close(); - } - catch (IOException e) { - System.out.println("error reading " + args[i]); - } - } - }*/ + //// using Lucene.Net.Analysis.En.PorterStemmer + //// using System; + //// using System.Globalization; + //// using System.IO; + ///// <summary> + ///// Test program for demonstrating the Stemmer. It reads a file and + ///// stems each word, writing the result to standard out. + ///// </summary> + ///// <param name="args">Usage: Stemmer file-name</param> + //public static void Main(string[] args) + //{ + // PorterStemmer s = new PorterStemmer(); + + // for (int i = 0; i < args.Length; i++) + // { + // try + // { + // using (Stream input = new FileStream(args[i], FileMode.Open, FileAccess.Read)) + // { + // byte[] buffer = new byte[1024]; + // int bufferLen, offset, ch; + + // bufferLen = input.Read(buffer, 0, buffer.Length); + // offset = 0; + // s.Reset(); + + // while (true) + // { + // if (offset < bufferLen) + // ch = buffer[offset++]; + // else + // { + // bufferLen = input.Read(buffer, 0, buffer.Length); + // offset = 0; + // if (bufferLen < 0) + // ch = -1; + // else + // ch = buffer[offset++]; + // } + + // if (char.IsLetter((char)ch)) + // { + // s.Add(char.ToLowerInvariant((char)ch)); + // } + // else + // { + // s.Stem(); + // Console.WriteLine(s.ToString()); + // s.Reset(); + // if (ch < 0) + // break; + // else + // { + // Console.Write((char)ch); + // } + // } + // } + // } + // } + // catch (IOException e) + // { + // Console.WriteLine("error reading " + args[i]); + // Console.WriteLine(e.ToString()); + // } + // } + //} } } \ No newline at end of file
