All pastes #2050931 Raw Edit

HexToDec

public java v1 · immutable
#2050931 ·published 2011-04-26 17:19 UTC
rendered paste body
package converter;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.FileReader;import java.io.FileWriter;import java.io.IOException;import java.util.ArrayList;public class HexToDec {	public static void main (String[]args) {		HexToDec h = new HexToDec();		ArrayList<Integer> integerList = h.decimalList("/Users/olemagro/Desktop/SinusHEX.txt");		integerArrayListToFile(integerList);	}		/**	 * Enkel metode som omgjør et heksadesimaltall representert som en String om til et Integer.	 * 	 * @param hex Det heksadesimale tallet du vil konvertere	 * @return Det omgjorte heksadesimale tallet i titallssystemet.	 */		public int hexToDec(String hex) {		int dec = Integer.parseInt(hex, 16);		return dec;	}		/**	 * Metode som omgjør alle hex-tall til dec og legger dem inn i en ArrayList.	 * 	 * @param filePath path til der tekstfilen med heksadesimaltall ligger.	 * @return Returnerer en liste med tall som er konvertert fra heksadesimal-desimal	 */		public ArrayList<Integer> decimalList(String filePath) 	{		ArrayList<Integer> decimalArray = new ArrayList<Integer>();		String hex = "";				try {			hex = readFileAsString(filePath);		} catch (IOException e) {			e.printStackTrace();		}				hex.trim();				for(int i = 0, n = 2668; i<n; i++)		{			char c1 = hex.charAt(2*i);			char c2 = hex.charAt((2*i)+1);						String s = Character.toString(c1) + Character.toString(c2);			int des = hexToDec(s);			decimalArray.add(des);		}				return decimalArray;	}		/**	 * Metode som henter inn data fra et tekstdokument og omgjør det til en tekststreng av typen String i java.	 * Kilde: http://snippets.dzone.com/posts/show/1335	 * 	 * @param filePath Path til tekstfilen.	 * @return Returnerer en tekststreng med all data fra .txt-dokumentet.	 * @throws java.io.IOException	 */		private static String readFileAsString(String filePath) throws java.io.IOException    {        StringBuffer fileData = new StringBuffer(3000);        BufferedReader reader = new BufferedReader(new FileReader(filePath));        char[] buf = new char[1024];        int numRead=0;        while((numRead=reader.read(buf)) != -1){            String readData = String.valueOf(buf, 0, numRead);            fileData.append(readData);            buf = new char[1024];        }        reader.close();        return fileData.toString();    }		/**	 * Metode som lagrer en tekstfil med utregnede hex-dec-verdier.	 * 	 * @param input Listen som inneholder de konverterte tallene.	 */	private static void integerArrayListToFile(ArrayList<Integer> input) 	{		try{			BufferedWriter out = new BufferedWriter(new FileWriter("SinusDEC.txt"));			for (int i = 0; i < input.size(); i++) 			{				out.write(input.get(i).toString() + " ");			}			out.close();		} catch (IOException e){			System.out.println(e);		}	}	}