CLR: .Net / Mono / Boo / Otros CLR > VB .NET

 Convertir Num Y Letras A Simbolos?

<< < (2/2)

borax:
pues saludos....mira la verdad no quero ofender no verle la cara a nadie...

que mal que usted lo entienda de esa manera tengo 36 años y no estudio esto solo estoy aprendiendo y leyendo lo basico.

Solo que quiero aprender esto por que me va hacer falta para un proyecto que tengo de escritura a un PIC U11956 para un sistema de lectura a un Atmel en Simbolos....

es robotica lo cual es un hobie que tengo desde niño y hoy en dia quisiera aprender a escribir mi propio codigo y no depender de otras personas...

Espero esto te explique por que quiero hacer esto.

y solo para informarte no es desifrar si no crear el codigo por eso digo que necesito escribir Letras y Numeros pero que me De esos Simbolos exactos y usar el codigo que me de para mi protecto.... el codigo es basico y preciso y nunca cambiara, por eso tienen que ser esos...

,,si quisiera que me hagan el trabajo pues pagaria por ello sin ningun problema....

 lo que necesito es solo un demo de como empesar ya que solo se seguir un codigo no crearlo....

espero lo comprendas y entiendas mi punto de vista, yo tanbien entiendo el tuyo,,,

Gracias y perdona si esto se mira como si yo quisiera aprobecharme de alguien lo cual de beras y de corazon no es hasi....Pero si no es posible que me ayuden pues alguien cierre el post y pues gracias por todo..

Perdonen por pedir ayuda....solo quiero aprender....GRACIAS a TODOS

Nebire:

--- Cita de: "borax" ---
  ¾  ½  ¼  »  º  ¹  ¸   ·  ¶  µ  ´  ³  ²   ±  °  ¯  ® ­ -  ¬  «   ª   ©   ¨   §   ¦   ¥
  A   B   C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R S  T   U   V   W   X  Y   Z

 
--- Fin de la cita ---
Todavía no acabo de entender que quieres realmente.

sólo por suponer...

Si necesitas que dados unos caracteres "A B C D ..." se conviertan de fijo en otros caracteres, distintos pero siempre con una correspondencia unívoca, todo lo que ienes que hacer es crear una tabla de conversión.

Esto puedes hacerlo de varias formas, siendo unas más rápido que otras. Y el modo a usar dependería de la asignación. Si existe correlación entre los símbolos a aparecer tal como la hay con los caracteres alfabéticos, entonces el cófigo podría ser como el que ya te anoté en otro mensaje. Si sin embargo no existe una correlación ni un orden lógico, entonces la conversión debe hacerse manual, tampoco es mucho más trabajosa, sólo menos elegante y algo más lenta quizás... de todos modos vb.NET vuela con las cadenas, por lo que aunque le pongas un tocho de 100MB. l ocnvertirá en algunos segundos...

Se me ocurre pués 2 formas sencillas que puedes abordar, una es un codificador con 1 entrada de datos  y 1 sola salida y 2 n entradas de control donde cada una contiene cada tabla de códigos.  El otro modo te será más asequible de entender y seguir, pués se trataría de crear dos matrices o cadenas con cada correpondiente carácter en el mismo índice de cada matriz respectivamente... es mejor ponerlos en una clase...

[CODE]

Nebire:

--- Cita de: "borax" ---  ¾  ½  ¼  »  º  ¹  ¸   ·  ¶  µ  ´  ³  ²   ±  °  ¯  ® ­ -  ¬  «   ª   ©   ¨   §   ¦   ¥
  A   B   C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R S  T   U   V   W   X  Y   Z


--- Fin de la cita ---
Todavía no acabo de entender que quieres realmente.

sólo por suponer...

Si necesitas que dados unos caracteres "A B C D ..." se conviertan de fijo en otros caracteres, distintos pero siempre con una correspondencia unívoca, todo lo que ienes que hacer es crear una tabla de conversión.

Esto puedes hacerlo de varias formas, siendo unas más rápido que otras. Y el modo a usar dependería de la asignación. Si existe correlación entre los símbolos a aparecer tal como la hay con los caracteres alfabéticos, entonces el cófigo podría ser como el que ya te anoté en otro mensaje. Si sin embargo no existe una correlación ni un orden lógico, entonces la conversión debe hacerse manual, tampoco es mucho más trabajosa, sólo menos elegante y algo más lenta quizás... de todos modos vb.NET vuela con las cadenas, por lo que aunque le pongas un tocho de 100MB. l ocnvertirá en algunos segundos...

Se me ocurre pués 2 formas sencillas que puedes abordar, una es un codificador con 1 entrada de datos  y 1 sola salida y 2 n entradas de control donde cada una contiene cada tabla de códigos.  El otro modo te será más asequible de entender y seguir, pués se trataría de crear dos matrices o cadenas con cada correpondiente carácter en el mismo índice de cada matriz respectivamente... es mejor ponerlos en una clase...

entoncres creamos un nuevo pproyecto, constará de un formularo y añadiremos una clase:

Código de la clase:

--- Código: Text --- Public Class codifica     ' piensa si las tablas deberían incluir un carácter de espacio    Private entrada As String  ' tabla origen: &#34;ABCDEF...&#34;    Private salida As String   ' tabla correspon: &#34;¾½¼»º¹...&#34;      ' las tablas deben ser igual de largas sin repeticiones y sin espacios en blanco    ' no se comprueban esos puntos se supone correcto...    Public Sub New(ByVal tablaOrigen As String, ByVal tablaDestino As String)        Me.entrada = tablaOrigen        Me.salida = tablaDestino    End Sub     ' convierte un´texto desde un código de origen a otro de destino especificados en tablas    Public Function convertir(ByVal texto As String) As String        Dim txt As String = &#34;&#34; ' cadena de salida        Dim car As String = &#34;&#34; ' un único carácter        Dim n As Integer = 0 ' posición de un carácter en la cadena         On Error GoTo errorCaracter        For k As Integer = 0 To texto.Length - 1  ' se inicia un bucle            car = texto.ElementAt(k)      ' toma un carácter del texto introducido            n = Me.entrada.IndexOf(car)   ' lo busca en la cadena origen y toma su posición            txt &= Me.salida.ElementAt(n) ' con la posición hallada toma el carácter en dicha posición y lo añade        Next        Return txt        Exit FunctionerrorCaracter:        MessageBox.Show(&#34;se produjo un error un cáracter del texto no consta en el 'diccionario' origen.&#34; & vbCrLf & _                        &#34;Se aborta la conversión... es el carácter entrecomillado: ( &#34; & car & &#34; )&#34;, &#34;ERROR: carácter fuera de la tabla...&#34;, MessageBoxButtons.OK, MessageBoxIcon.Error)    End Function     ' permite cambiar más adelante las tablas de conversión si se desea.    Public Sub cambiar_Codigos(ByVal tablaOrigen As String, ByVal tablaDestino As String)        Me.entrada = tablaOrigen        Me.salida = tablaDestino    End SubEnd Class  
Código del formulario:

--- Código: Text --- Public Class Form1    Public cod As codifica ' instancia la clase codifica     ' asigna las tablas de códigos a la clase instanciada    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load        ' NOTA: no comprueba que haya caracteres repetidos        ' NOTA-2: a las tablas se les ha incluído también el espacio al inicio del todo        If Len(TextBox1.Text = TextBox2.Text) Then            cod = New codifica(TextBox1.Text, TextBox2.Text)        Else            MessageBox.Show(&#34;Un texto tiene más caracteres que otro. ambos deben tener el mismo número de caracteres.&#34;, &#34;No se pudo asignar las tablas...&#34;, MessageBoxButtons.OK, MessageBoxIcon.Warning)        End If    End Sub     ' convierte el código que hay en el textbox3 y lo deposita en el textbox4    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click        TextBox4.Text = cod.convertir(TextBox3.Text.ToUpper) ' nota que se connvierte a mayúculas previamente    End Sub     ' cambia las tablas de códigos por otras diferentes... sólo comprueba que tengan el mismo tamaño     Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click        ' NOTA: no comprueba que haya caracteres repetidos        If Len(TextBox1.Text = TextBox2.Text) Then            Call cod.cambiar_Codigos(TextBox1.Text, TextBox2.Text)        Else            MessageBox.Show(&#34;Un texto tiene más caracteres que otro. ambos deben tener el mismo número de caracteres.&#34;, &#34;No se pudo reasignar las tablas...&#34;, MessageBoxButtons.OK, MessageBoxIcon.Warning)        End If    End SubEnd Class       
Imagen del formulario como quedaría...: añadirle 4 textbox y 2 botones, al gusto...

Navegación

[0] Índice de Mensajes

[*] Página Anterior

Ir a la versión completa