Revision: 17491
http://sourceforge.net/p/gate/code/17491
Author: markagreenwood
Date: 2014-02-28 16:58:25 +0000 (Fri, 28 Feb 2014)
Log Message:
-----------
make sure we don't leak stream handles
Modified Paths:
--------------
gate/trunk/src/main/hepple/postag/POSTagger.java
Modified: gate/trunk/src/main/hepple/postag/POSTagger.java
===================================================================
--- gate/trunk/src/main/hepple/postag/POSTagger.java 2014-02-28 16:43:43 UTC
(rev 17490)
+++ gate/trunk/src/main/hepple/postag/POSTagger.java 2014-02-28 16:58:25 UTC
(rev 17491)
@@ -390,30 +390,38 @@
for(int i = 0; i < fileNames.length; i++){
String file = fileNames[i];
- BufferedReader reader = new BufferedReader(new FileReader(file));
- String line = reader.readLine();
-
- while(line != null){
- StringTokenizer tokens = new StringTokenizer(line);
- List<String> sentence = new ArrayList<String>();
- while(tokens.hasMoreTokens()) sentence.add(tokens.nextToken());
- List<List<String>> sentences = new ArrayList<List<String>>();
- sentences.add(sentence);
- List<List<String[]>> result = tagger.runTagger(sentences);
-
- Iterator<List<String[]>> iter = result.iterator();
- while(iter.hasNext()){
- List<String[]> sentenceFromTagger = iter.next();
- Iterator<String[]> sentIter = sentenceFromTagger.iterator();
- while(sentIter.hasNext()){
- String[] tag = sentIter.next();
- System.out.print(tag[0] + "/" + tag[1]);
- if(sentIter.hasNext()) System.out.print(" ");
- else System.out.println();
- }//while(sentIter.hasNext())
- }//while(iter.hasNext())
- line = reader.readLine();
- }//while(line != null)
+ BufferedReader reader = null;
+
+ try {
+ reader = new BufferedReader(new FileReader(file));
+
+ String line = reader.readLine();
+
+ while(line != null){
+ StringTokenizer tokens = new StringTokenizer(line);
+ List<String> sentence = new ArrayList<String>();
+ while(tokens.hasMoreTokens()) sentence.add(tokens.nextToken());
+ List<List<String>> sentences = new ArrayList<List<String>>();
+ sentences.add(sentence);
+ List<List<String[]>> result = tagger.runTagger(sentences);
+
+ Iterator<List<String[]>> iter = result.iterator();
+ while(iter.hasNext()){
+ List<String[]> sentenceFromTagger = iter.next();
+ Iterator<String[]> sentIter = sentenceFromTagger.iterator();
+ while(sentIter.hasNext()){
+ String[] tag = sentIter.next();
+ System.out.print(tag[0] + "/" + tag[1]);
+ if(sentIter.hasNext()) System.out.print(" ");
+ else System.out.println();
+ }//while(sentIter.hasNext())
+ }//while(iter.hasNext())
+ line = reader.readLine();
+ }//while(line != null)
+ }
+ finally {
+ IOUtils.closeQuietly(reader);
+ }
//
//
//
@@ -455,17 +463,25 @@
* for input.
*/
private static List<List<String>> readInput(String file) throws IOException{
- BufferedReader reader = new BufferedReader(new FileReader(file));
- String line = reader.readLine();
- List<List<String>> result = new ArrayList<List<String>>();
- while(line != null){
- StringTokenizer tokens = new StringTokenizer(line);
- List<String> sentence = new ArrayList<String>();
- while(tokens.hasMoreTokens()) sentence.add(tokens.nextToken());
- result.add(sentence);
- line = reader.readLine();
- }//while(line != null)
- return result;
+ BufferedReader reader = null;
+
+ try {
+ reader = new BufferedReader(new FileReader(file));
+
+ String line = reader.readLine();
+ List<List<String>> result = new ArrayList<List<String>>();
+ while(line != null){
+ StringTokenizer tokens = new StringTokenizer(line);
+ List<String> sentence = new ArrayList<String>();
+ while(tokens.hasMoreTokens()) sentence.add(tokens.nextToken());
+ result.add(sentence);
+ line = reader.readLine();
+ }//while(line != null)
+ return result;
+ }
+ finally {
+ IOUtils.closeQuietly(reader);
+ }
}//private static List readInput(File file) throws IOException
}//public class POSTagger
This was sent by the SourceForge.net collaborative development platform, the
world's largest Open Source development site.
------------------------------------------------------------------------------
Flow-based real-time traffic analytics software. Cisco certified tool.
Monitor traffic, SLAs, QoS, Medianet, WAAS etc. with NetFlow Analyzer
Customize your own dashboards, set traffic alerts and generate reports.
Network behavioral analysis & security monitoring. All-in-one tool.
http://pubads.g.doubleclick.net/gampad/clk?id=126839071&iu=/4140/ostg.clktrk
_______________________________________________
GATE-cvs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/gate-cvs