All pastes #45057 Raw Edit

Unnamed

public text v1 · immutable
#45057 ·published 2006-03-09 19:54 UTC
rendered paste body
import java.io.*;

public class ebcdicConverter {
	
	public String asciiToEbcdic(String cadena){
	/*public char charAt(int index)Returns the character at the specified index. 
	An index ranges from 0 to length() - 1. The first character of the sequence is at index 0, 
	the next at index 1, and so on, as for array indexin 
	
	public int length()Returns the length of this string. The length is equal to the number 
	of 16-bit Unicode characters in the string. 
	
	*/

	String cadena_regreso;
	char[] cbuf;
	int cadenaSize = cadena.length();
	char caracter;
	int iCaracter;
	    
	cbuf = new char[1000];	

	for(int i = 0; i < cadenaSize; i++){
		
		caracter = cadena.charAt(i);
		iCaracter = (int) caracter;
		
		if(iCaracter == 32)
			iCaracter = 64;
		else if((iCaracter >= 65) && (iCaracter <= 73))
			iCaracter = iCaracter + 128;
		else if((iCaracter >= 74) && (iCaracter <= 82))
			iCaracter = iCaracter + 135;
		else if((iCaracter >= 83) && (iCaracter <= 90))
			iCaracter = iCaracter + 143;
		else if((iCaracter >= 97) && (iCaracter <= 105))
			iCaracter = iCaracter + 32;
		else if((iCaracter >= 106) && (iCaracter <= 114))
			iCaracter = iCaracter + 39;
		else if((iCaracter >= 115) && (iCaracter <= 122))
			iCaracter = iCaracter + 47;
		else if((iCaracter >= 48) && (iCaracter <= 57))
			iCaracter = iCaracter + 192;
			
			cbuf[i] = (char) iCaracter;
	}
	
	cadena_regreso = String.copyValueOf( cbuf, 0, cadenaSize);
	
	return cadena_regreso;
}

public String ebcdicToAscii(String cadena){		
	
	String cadena_regreso;
	char[] cbuf;
	int cadenaSize = cadena.length();
	char caracter;
	int iCaracter;
	    
	cbuf = new char[1000];	

	for(int i = 0; i < cadenaSize; i++){
		
		caracter = cadena.charAt(i);
		iCaracter = (int) caracter;
		
		if(iCaracter == 64)
			iCaracter = 32;
		else if(iCaracter == 75)
			iCaracter = 46;
		else if((iCaracter >= 193) && (iCaracter <= 201))
			iCaracter = iCaracter - 128;
		else if((iCaracter >= 209) && (iCaracter <= 217))
			iCaracter = iCaracter - 135;
		else if((iCaracter >= 226) && (iCaracter <= 233))
			iCaracter = iCaracter - 143;
		else if((iCaracter >= 129) && (iCaracter <= 137))
			iCaracter = iCaracter - 32;
		else if((iCaracter >= 145) && (iCaracter <= 153))
			iCaracter = iCaracter - 39;
		else if((iCaracter >= 162) && (iCaracter <= 169))
			iCaracter = iCaracter - 47;
		else if((iCaracter >= 240) && (iCaracter <= 249))
			iCaracter = iCaracter - 192;	
		
		cbuf[i] = (char) iCaracter;
		}
	
	cadena_regreso = String.copyValueOf( cbuf, 0, cadenaSize);
	
	return cadena_regreso;
	}
	
}