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

 

 


Tema destacado:


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  Buenas necesito ayuda como puedo enviar un RichTextBox a un datagridview en vb
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Buenas necesito ayuda como puedo enviar un RichTextBox a un datagridview en vb  (Leído 2,152 veces)
fulltower

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Buenas necesito ayuda como puedo enviar un RichTextBox a un datagridview en vb
« en: 20 Diciembre 2018, 04:27 am »

Buenas necesito ayuda como puedo enviar un RichTextBox a un datagridview, aqui dejo una imagen del RichTextBox la cual tiene  separador que es : "|" nombre | apellido| edad | estado civil , y esto sea enviado al  datagriview donde sea nombre  apellido edad y estado civil, espero me puedan ayudar con esto saludos un ejemplo:

en el RichTextBox:

maria | perez | 35años | casada
jose | lopes | 40años | divorciado
vanessa | fernandez | 20años | soltera
luis | gomez | 21años | soltero

En el datagridview:
datagrid.Columns.Add("nombre")
datagrid.Columns.Add("apellido")
datagrid.Columns.Add("edad")
datagrid.Columns.Add("estado civil")

que se agreguen al datagridview el dato del richtextbox

es en formato vb
           


En línea

Shell Root
Moderador Global
***
Desconectado Desconectado

Mensajes: 3.723


<3


Ver Perfil WWW
Re: Buenas necesito ayuda como puedo enviar un RichTextBox a un datagridview en vb
« Respuesta #1 en: 20 Diciembre 2018, 15:35 pm »

:https://www.dotnetperls.com/split-vbnet


En línea

Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.
raul2309

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Re: Buenas necesito ayuda como puedo enviar un RichTextBox a un datagridview en vb
« Respuesta #2 en: 4 Enero 2019, 17:53 pm »

La mejor solución es que uses un recordset desconectado:

Option explicit
DIM RS as recordset

en el load
set RS = new recordset

private sub createRS()
rs.fields.apend "nombre", vbstr

luego creas una rutina para descargar los fragmentos de testo en el RS y por ultimo conectas el DBGRID al recorset
En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.788



Ver Perfil
Re: Buenas necesito ayuda como puedo enviar un RichTextBox a un datagridview en vb
« Respuesta #3 en: 17 Enero 2019, 00:54 am »

Solución simple y efectiva adaptada a tu escenario, mediante la clase TextFieldParser para parsear la cadena de texto en formato CSV:

Código
  1. Dim dt As New DataTable("csv")
  2. dt.Columns.Add("nombre")
  3. dt.Columns.Add("apellido")
  4. dt.Columns.Add("edad")
  5. dt.Columns.Add("estado civil")
  6.  
  7. Using csvText As New StringReader(Me.RichTextBox1.Text),
  8.      csvReader As New TextFieldParser(csvText) With {
  9.          .Delimiters = {"|"c},
  10.          .HasFieldsEnclosedInQuotes = False,
  11.          .TextFieldType = FieldType.Delimited
  12.      }
  13.  
  14.    Do Until csvReader.EndOfData
  15.        Try
  16.            Dim fields As String() = csvReader.ReadFields()
  17.            dt.Rows.Add(fields)
  18.        Catch ex As MalformedLineException
  19.            Throw
  20.        End Try
  21.    Loop
  22. End Using
  23.  
  24. Me.DataGridView1.DataSource = dt
« Última modificación: 17 Enero 2019, 00:58 am por Eleкtro (sin pilas) » En línea

Eleкtro
Ex-Staff
*
Desconectado Desconectado

Mensajes: 9.788



Ver Perfil
Re: Buenas necesito ayuda como puedo enviar un RichTextBox a un datagridview en vb
« Respuesta #4 en: 18 Enero 2019, 09:23 am »

He escrito una solución más genérica:

Código
  1. <hidemodulename>
  2. Public module TextFieldParserExtensions
  3.  
  4. ''' ----------------------------------------------------------------------------------------------------
  5. ''' <summary>
  6. ''' Converts the source <see cref="TextFieldParser"/> to <see cref="DataTable"/>.
  7. ''' </summary>
  8. ''' ----------------------------------------------------------------------------------------------------
  9. ''' <param name="sender">
  10. ''' The source <see cref="TextFieldParser"/>.
  11. ''' </param>
  12. '''
  13. ''' <param name="useFirstRowAsColumns">
  14. ''' If set to <see langword="True"/>, use the items of the first row of
  15. ''' the source <see cref="TextFieldParser"/> to create the columns of
  16. ''' the resulting <see cref="DataTable"/>.
  17. ''' </param>
  18. ''' ----------------------------------------------------------------------------------------------------
  19. ''' <returns>
  20. ''' The resulting <see cref="DataTable"/>.
  21. ''' </returns>
  22. ''' ----------------------------------------------------------------------------------------------------
  23. <DebuggerStepThrough>
  24. <Extension>
  25. <EditorBrowsable(EditorBrowsableState.Always)>
  26. Public Function ToDataTable(ByVal sender As TextFieldParser, ByVal useFirstRowAsColumns As Boolean) As DataTable
  27.  
  28.    Dim dt As New DataTable() With {.CaseSensitive = False}
  29.    Dim customColumnsCreated As Boolean
  30.    Dim fields As String() = Nothing
  31.  
  32.    Do Until sender.EndOfData
  33.        Try
  34.            fields = sender.ReadFields()
  35.  
  36.        Catch ex As MalformedLineException
  37.            Throw
  38.  
  39.        End Try
  40.  
  41.        If Not (customColumnsCreated) AndAlso (useFirstRowAsColumns) Then
  42.            For Each field As String In fields
  43.                dt.Columns.Add(field)
  44.            Next field
  45.            customColumnsCreated = True
  46.            Continue Do
  47.        End If
  48.  
  49.        Try
  50.            dt.Rows.Add(fields)
  51.  
  52.        Catch ex As ArgumentException When Not (useFirstRowAsColumns) AndAlso (ex.HResult = -2147024809) ' Input array is longer than the number of columns in this table.
  53.            For i As Integer = 0 To ((fields.Count - dt.Columns.Count) - 1)
  54.                dt.Columns.Add()
  55.            Next i
  56.            dt.Rows.Add(fields)
  57.  
  58.        End Try
  59.  
  60.    Loop
  61.  
  62.    Return dt
  63. End Function
  64.  
  65. end module

Modo de empleo:
Código
  1. Dim csvTable As New DataTable()
  2.  
  3. Dim csvText As String =
  4.    <csv>
  5.         Name; Last Name; Age
  6.         Michael; Johnson Phillips; 26
  7.         William; Lee Williams; 34
  8.         Susan; Parker Evans; 32
  9.         Matilda; Garcia Martinez; 28
  10.    </csv>.Value
  11.  
  12. Using csvReader As New StringReader(csvText),
  13.      csvParser As New TextFieldParser(csvReader) With {
  14.      .Delimiters = {";"c},
  15.      .HasFieldsEnclosedInQuotes = False,
  16.      .TextFieldType = FieldType.Delimited
  17. }
  18.  
  19.    csvTable = TextFieldParserExtensions.ToDataTable(csvParser, useFirstRowAsColumns:=True)
  20. End Using
  21.  
  22. Me.DataGridView1.DataSource = csvTable

PD: todo esto y mucho más en mi librería comercial DevCase para .NET Framework en la página de CodeCanyon.net...
« Última modificación: 18 Enero 2019, 09:26 am por Eleкtro (sin pilas) » En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Buenas POR FAVOR NECESITO AYUDA
Multimedia
lindowOS 1 1,715 Último mensaje 27 Enero 2005, 10:34 am
por Songoku
Buenas noches, Necesito ayuda.
Java
ArhennJosey 2 2,885 Último mensaje 21 Mayo 2010, 01:47 am
por ArhennJosey
buenas necesito ayuda con mi usb wifi
Hacking Wireless
rey186 1 2,376 Último mensaje 10 Noviembre 2013, 06:40 am
por Sh4k4
BUENAS COMO PUEDO LIBERAR UN ALCATEL A205G-B
Dispositivos Móviles (PDA's, Smartphones, Tablets)
Tork10 0 2,051 Último mensaje 5 Marzo 2019, 22:04 pm
por Tork10
[VB.NET] ¿Cómo puedo subrayar palabras de cierto color en un RichTextBox?
.NET (C#, VB.NET, ASP)
dont'Exist 1 2,795 Último mensaje 9 Septiembre 2019, 18:12 pm
por Serapis
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines