elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  [ALGORITMO] ampliar cadena string
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [ALGORITMO] ampliar cadena string  (Leído 2,066 veces)
kondrag_X1

Desconectado Desconectado

Mensajes: 157


Ver Perfil
[ALGORITMO] ampliar cadena string
« en: 26 Abril 2013, 22:31 pm »

Buenas, mi duda es la siguiente estoy tratando de que dada una cadena, es decir, un String subdividirlo en otras subcadenas más pequeñas y que a la última subcadena si no es del tamaño esperado se añada información para que todas las subcadenas tengan el mismo tamaño.

Adjunto código:
Código:
import java.io.IOException;


public class Main {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
String msg = "En mi casa hay un pája" +
" afsgjsfhghsjkgjsfdhgjkshdgjhsdfjghsgsgsgsfgwhjdsfghjksdfgsdfglksfvdfsjvdsfvunufdig" +
"sfgjsjkfglksjfglkjslkdgjklfgsgdsgdsjglkjsfdgkjslkfjgñlksjflkjgñlsjfgslkm gislkjgjgs" +
"sñlkgjsfijglksjfglkggdgdsgfsjfkjglksjfglksjglkjsfigjskñglmoidsfgslkdmgimdslkgmodsng" +
"lskglksdjgksjgsgsfgflkjdsgkjslkgfjsdgksmgijdflkgmndfjgksgihwlkhigwegt`hewrtgwtnwèip" +
"ljkgdsjgklssgfdkgjwiehg.kergiewñrlkwetñkwjergwer.kjgwerkgwhtñ`whhweñrlkgw0ehgwegp`w" +
"woprgjoiwjroijweroitjowierjtoiwjtjwopmidg09'jhpot'¡0welkgrm8ht'340wjhr80wdfgñlkjdsf" +
"sgffdgsdfgsro que dice hay yaadflñhglfkdngsafgfgjhfglgfhkasjgmv,bserng  ahfgajnfsdafa";

Integer longitud = 516;       // longitud de las subcadenas en bit
Integer lenmsg = msg.length();
Integer longitudMsgBit =lenmsg.intValue()*32; // multiplico*32 ya que 1 int = 32 bit (java)
//longitud en bit / bit de los submensajes = nº submensajes
Integer numBloquesCodificar = longitudMsgBit / longitud; 
System.out.println ("Bloques Bit según tam clave: "+numBloquesCodificar);

String fraccionMsg;
int indexStart = 0;
int indexEnd = 0;
int lenUltimoBloqueBit = 0;
int lenBitAdd= 0;
StringBuffer txt = new StringBuffer();

//se divide el mensaje
for(int i = 0; i <= numBloquesCodificar;i++ ){

//actualizo indices
indexStart = (i*longitud)/(longitud/32);
indexEnd = (longitud + longitud*i)/(longitud/32);

if(i == (numBloquesCodificar - 1)){ //aquí se le añaden los bit de relleno al ultimo bloque
lenUltimoBloqueBit = msg.substring(indexStart).length() * 32;
//calculo los bit del ultimo bloque
lenBitAdd = longitud - lenUltimoBloqueBit;

txt.append(msg.substring(indexStart));

for (int j = 0;j <= lenBitAdd; j++){ //recorremos los bit que falta
txt.append(true); //se lo introducimos mediante boolean
}

fraccionMsg = txt.toString();
}else{
fraccionMsg = msg.substring(indexStart, indexEnd);
}


System.out.println ("fracción "+i+" : "+fraccionMsg);
}
try {
System.in.read();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}



En línea

DarkSorcerer

Desconectado Desconectado

Mensajes: 69



Ver Perfil
Re: [ALGORITMO] ampliar cadena string
« Respuesta #1 en: 8 Mayo 2013, 11:25 am »

¿ Realmente que buscas ?

¿ Dividir el String msg en cadenas mas pequeñas ?

Te voy a dar una pista, un String es una cadena de caracteres, es decir, un conjunto de chars, el String es una clase y tiene metodos, una de ellas es length o largo de la cadena (cantidad de char), tambien hay un metodo llamado toCharArray() que convierte tu guardas los caracteres en un arreglo y de ahi podrias crear otros arreglos acotados.

Podrias leer la documentacion de String, hay metodos bien interesantes.

http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/String.html

Saludos


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Sacar trozo de una cadena de string en C#
.NET (C#, VB.NET, ASP)
Camboyano 1 11,435 Último mensaje 6 Mayo 2009, 14:27 pm
por Novlucker
Buscar cadena en String
.NET (C#, VB.NET, ASP)
.:Weeds:. 2 3,175 Último mensaje 11 Febrero 2011, 08:46 am
por .:Weeds:.
se corta la cadena string
Programación Visual Basic
rembolso 2 2,668 Último mensaje 1 Mayo 2011, 06:13 am
por rembolso
Cadena de texto a url string
PHP
[u]nsigned 5 4,667 Último mensaje 30 Julio 2011, 06:53 am
por WHK
Cadena de bytes a string
Programación C/C++
85 4 4,216 Último mensaje 24 Febrero 2013, 00:18 am
por 85
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines