?? readin.java
字號:
package huffman_tree;
import java.io.IOException;
import java.io.FileNotFoundException;
import java.io.InputStreamReader;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.util.Vector;
public class ReadIn {
public static int fileSize = 0;
public static Vector<HuffmanNode> readIn(String fileName) {
String line;
StringBuilder result = new StringBuilder();
// fileName = "Test.txt";
// File file = new File("Test.txt");
// System.out.println(file.length());
try {
BufferedReader buff = new BufferedReader(new InputStreamReader(
new FileInputStream(fileName)));
while ((line = buff.readLine()) != null) {
result.append(line);
}
buff.close();
} catch (FileNotFoundException ex) {
ex.printStackTrace();
} catch (IndexOutOfBoundsException ex) {
ex.printStackTrace();
} catch (IOException ex) {
ex.printStackTrace();
}
Vector<Character> word = new Vector<Character>();
for (int i = 0; i < result.length(); i++) {
if (!word.contains(result.charAt(i))) {
word.add(result.charAt(i));
}
}
Object[] letterArray = new Object[word.size()];
int[] freqArray = new int[word.size()];
Vector<HuffmanNode> letterNode = new Vector<HuffmanNode>();
if (!word.isEmpty()) {
letterArray = word.toArray();
for (int i = 0; i < result.length(); i++) {
for (int j = 0; j < letterArray.length; j++) {
if (result.charAt(i) == (char) (Character) letterArray[j]) {
freqArray[j]++;
}
}
}
for (int j = 0; j < letterArray.length; j++) {
letterNode.add(new HuffmanNode(
(char) (Character) letterArray[j], freqArray[j]));
// System.out.println((char) (Character) letterArray[j] + ""
// + freqArray[j]);
}
}
fileSize = result.length();
return letterNode;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
ReadIn.readIn("Test.txt");
System.out.println(HuffmanNode.nodeNum);
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -