资源简介

自然语言处理小应用程序开发的一个汇率换算的小APP,压缩包内含所有源码和生成的JAR包。Eclipse工程,JDK1.7开发环境,windowbuilder插件画界面的。

资源截图

代码片段和文件信息

package exchangerate;

import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;
import java.util.Set;

public class CurrencyTable {

private static Map codeMap = new HashMap();
private static Map curMap = new HashMap();
private static Map cntMap = new HashMap();

static {
try {
InputStream is = CurrencyTable.class.getResourceAsStream(“/exchangerate/currencyTable.csv“);
BufferedReader reader = new BufferedReader(new InputStreamReader(is “gbk“));

String line;
while ((line = reader.readLine()) != null) {
String lineTrim = line.trim();
if (lineTrim.startsWith(“#“) || lineTrim.isEmpty()) {
continue;
}

String[] splitTmp = lineTrim.split(““);

if (splitTmp.length != 3) {
Utils.p(“WARN: currencyTable.csv has invalid line:“ + line);
continue;
}

Currency cur = new Currency(splitTmp);
//Utils.p(“Currency found from currencyTable.csv :“ + cur.getCurrencyCode());

if (codeMap.containsKey(cur.getCurrencyCode())) {
//发现重复CODE,合并
codeMap.get(cur.getCurrencyCode()).mergeToThis(cur);
Utils.p(“CODE重复(将合并): “ + cur.getCurrencyCode());
} else {
codeMap.put(cur.getCurrencyCode() cur);
}

//更新 cur
cur = codeMap.get(cur.getCurrencyCode());
for (String info : cur.getAliasCurrencyNames()) {
if (curMap.containsKey(info)) {
//Utils.p(“--> CURRENCY重复:“ + info);
} else {
curMap.put(info cur);
}
}
for (String info : cur.getAliasCountryNames()) {
if (cntMap.containsKey(info)) {
//Utils.p(“--> Country重复:“ + info);
} else {
cntMap.put(info cur);
}
}
}
reader.close();
} catch (FileNotFoundException e1) {
e1.printStackTrace();
} catch (IOException e2) {
e2.printStackTrace();
} finally {

}
}

/**
 * 货币名查代码
 * @param currency
 * @return
 */
public static String currency2code(String currency) {
if (curMap.containsKey(currency) == false) {
return ““;
}

return curMap.get(currency).getCurrencyCode();
}

/**
 * xx国的货币名
 * @param country
 * @return
 */
public static String getCurrencyFromCountry(String country) {
if (cntMap.containsKey(country) == false) {
return ““;
}

return cntMap.get(country).getPreferredCurrencyName();
}

/**
 * xx是什么国家的货币
 * @param currency
 * @return
 */
public static String getCountryFromCurrency(String currency) {
if (curMap.containsKey(currency) == false) {
return ““;
}

return curMap.get(currency).getPreferredCountryName();
}

public static void main(String[] args) {
Utils.p(“done

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2017-06-15 14:43  Demo\
     文件         729  2017-06-15 13:43  Demo\.classpath
     文件         380  2017-06-15 13:43  Demo\.project
     目录           0  2017-06-15 14:43  Demo\.settings\
     文件          57  2017-06-15 13:43  Demo\.settings\org.eclipse.core.resources.prefs
     文件         670  2017-06-15 13:43  Demo\.settings\org.eclipse.jdt.core.prefs
     目录           0  2017-06-15 14:43  Demo\lib\
     文件      434678  2017-06-15 13:43  Demo\lib\commons-lang3-3.4.jar
     文件       61829  2017-06-15 13:43  Demo\lib\commons-logging-1.2.jar
     文件      351470  2017-06-05 17:04  Demo\lib\fastjson-1.1.23.jar
     文件      411161  2017-06-15 13:43  Demo\lib\fastjson-1.2.5.jar
     文件      736658  2017-06-15 13:43  Demo\lib\httpclient-4.5.2.jar
     文件      326724  2017-06-15 13:43  Demo\lib\httpcore-4.4.4.jar
     文件       94360  2017-06-15 13:43  Demo\lib\json.jar
     文件     2748959  2017-06-15 13:43  Demo\lib\org.eclipse.swt.jar
     目录           0  2017-06-15 14:43  Demo\src\
     目录           0  2017-06-15 14:44  Demo\src\exchangerate\
     文件        3750  2017-06-15 13:43  Demo\src\exchangerate\currencyTable.csv
     文件        4548  2017-06-15 13:55  Demo\src\exchangerate\CurrencyTable.java
     文件       12936  2017-06-15 13:43  Demo\src\exchangerate\ExHandler.java
     文件        8770  2017-06-15 13:43  Demo\src\exchangerate\ExResult.java
     文件        7639  2017-06-15 13:43  Demo\src\exchangerate\MainJframe.java
     文件        5042  2017-06-14 16:04  Demo\src\exchangerate\NLI.java
     文件        7687  2017-06-15 13:43  Demo\src\exchangerate\Utils.java
     文件     4484813  2017-06-15 13:59  exchangerate_olami.jar

评论

共有 条评论