현재 프로젝트에서 자연어를 파싱하는 데 관심이 있습니다. 한 테스트는 파일에서 텍스트를 읽고 특정 문자를 제거한 다음 텍스트를 단일 단어로 토큰 화합니다. 이 테스트는 실제로 고유 한 단어의 수를 비교합니다. 이클립스에서이 테스트는 "녹색"이며, 예상보다 많은 수의 단어가 생성됩니다. 단어의 목록을 비교, 나는 다음과 같은 추가 단어를 참조하십시오왜 maven이 Eclipse와 다른 utf-8 문자를 사용합니까? (테스트는 Eclipse에서 실행되고, 실패는 실패합니다.)
- 는
- card⊙s
- institution⊙s
- issuer⊙s
- provider⊙s
- PSAM을 acquirer⊙s을 ⊙s
- ⊜from⊝
- ⊜slot⊝
- ⊜to⊝
텍스트 소스를 보면, 그것은 멀리 필터링해야 다음과 같은 문자가 포함되어 있습니다 "" '
이 이클립스에서 작동하지만,하지 받는다는한다. 나는 utf-8을 사용하고있다. 파일은 내가 다음을 지정 받는다는 치어에 제대로 인코딩 할 것 :
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<org.apache.lucene.version>3.6.0</org.apache.lucene.version>
</properties>
편집 : 여기에 파일을 읽고 코드 (일식에 따른되는, UTF-8로 인코딩이)입니다.
BufferedReader reader = new BufferedReader(
new FileReader(this.file));
String line = "";
while ((line = reader.readLine()) != null) {
// the csv contains a text and a classification
String[] reqCatType = line.split(";");
String reqText = reqCatType[0].trim();
String reqCategory = reqCatType[1].trim();
// the tokenizer also removes unwanted characters:
String[] sentence = this.filter.filterStopWords(this.tokenizer
.tokenize(reqText));
// we use this data to train a machine learning algorithm
this.dataSet.learn(sentence, reqCategory);
}
reader.close();
편집 : 다음 정보는 문제를 분석하는 데 유용 할 수 있습니다 :
mvn -v
Apache Maven 3.0.3 (r1075438; 2011-02-28 09:31:09-0800)
Maven home: /usr/share/maven
Java version: 1.6.0_33, vendor: Apple Inc.
Java home: /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
Default locale: en_US, platform encoding: MacRoman
OS name: "mac os x", version: "10.6.8", arch: "x86_64", family: "mac"
당신이 파일을 읽을 수있는 코드를 보여줍니다. – jtahlborn
아마도 http://maven.apache.org/plugins/maven-resources-plugin/examples/encoding.html이 도움이 될까요? – afk5min
제안에 감사드립니다, @ afk5min,하지만 제대로 적용해도 문제가 해결되지 않습니다. 예제에서 구성을 사용하여 maven-resources-plugin을 추가했지만 아무 것도 변경되지 않았습니다. "[정보] 'UTF-8'인코딩을 사용하여 필터링 된 리소스 복사 [정보] 10 개의 리소스 복사 "이것이 도움이된다고 생각한 이유는 무엇입니까? – oerich