EXPORTAR DATAGRIDVIEW EM TXT FIXO
Boa Tarde a todos
Estou desenvolvendo uma aplicação para gerar um layout de importação.
eu preciso exportar um datagridview em um txt fixo eu tenho o layout definido só falta saber como exportar em txt fixo.
ainda não tenho o codigo de exportação porque não sei por onde começar algum tem uma luz para mim ajudar
Estou desenvolvendo uma aplicação para gerar um layout de importação.
eu preciso exportar um datagridview em um txt fixo eu tenho o layout definido só falta saber como exportar em txt fixo.
ainda não tenho o codigo de exportação porque não sei por onde começar algum tem uma luz para mim ajudar
DataGridView não é fonte de dados. Se fez como a maioria e preencheu o datagrid usando um datatable, abra novamente o datatable com a mesma query e percorra-o exportando os dados para um objeto FileStream
Se você fez da maneira realmente profissional, usando uma lista genérica de entidades, é a mesma coisa, mas vai ser muito mais simples.
Já pensou na possibilidade de exportar para um XML ao invés de um CSV?
Se você fez da maneira realmente profissional, usando uma lista genérica de entidades, é a mesma coisa, mas vai ser muito mais simples.
Já pensou na possibilidade de exportar para um XML ao invés de um CSV?
Eu estou fazendo essa aplicação para gerar um aquivo de integração para outro sistema que so aceita dados no layou fixo determinado por eles,
eu estou carregando o grid apartir de uma planilha do excel, eu preciso transformar essa planilha no layout expecificad pela outra empresa.
alguem tem um modelo de codigo ou uma luz por onde começar
dede ja muinto obrigado pela ajuda
eu estou carregando o grid apartir de uma planilha do excel, eu preciso transformar essa planilha no layout expecificad pela outra empresa.
alguem tem um modelo de codigo ou uma luz por onde começar
dede ja muinto obrigado pela ajuda
Como é a sua rotina de preenchimento do grid?
o meu codigo esta desta maneira
[Ô]ts System.Data.OleDb
Public Class Form1
Private da As OleDbDataAdapter
Private dt As DataTable
Dim conexao_Excel As String = [Ô]Provider=Microsoft.Jet.OleDb.4.0;data source=P:\1 - Prosoft\4. Dados Clientes\Geacon\13-11-2012
otas2010.xls;Extended Properties=Excel 8.0;[Ô]
Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
End Sub
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
[ô] cria um novo dataadapter
da = New OleDbDataAdapter([Ô]SELECT * FROM [Plan1$][Ô], conexao_Excel)
[ô]
[ô] preenche a tabela com dados da planilha Excel
dt = New DataTable
da.Fill(dt)
[ô] define a chave primaria
dt.PrimaryKey = New DataColumn() {dt.Columns(0)}
[ô] registros somente podem ser inseridos usando esta tecnica
dt.DefaultView.AllowDelete = False
dt.DefaultView.AllowEdit = True
dt.DefaultView.AllowNew = True
[ô] vincula o modo de visao padrão da tabela ao datagrid
dgExcel.DataSource = dt.DefaultView
End Sub
End Class
[Ô]
Obrigado pela ajuda
[Ô]ts System.Data.OleDb
Public Class Form1
Private da As OleDbDataAdapter
Private dt As DataTable
Dim conexao_Excel As String = [Ô]Provider=Microsoft.Jet.OleDb.4.0;data source=P:\1 - Prosoft\4. Dados Clientes\Geacon\13-11-2012
otas2010.xls;Extended Properties=Excel 8.0;[Ô]
Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
End Sub
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
[ô] cria um novo dataadapter
da = New OleDbDataAdapter([Ô]SELECT * FROM [Plan1$][Ô], conexao_Excel)
[ô]
[ô] preenche a tabela com dados da planilha Excel
dt = New DataTable
da.Fill(dt)
[ô] define a chave primaria
dt.PrimaryKey = New DataColumn() {dt.Columns(0)}
[ô] registros somente podem ser inseridos usando esta tecnica
dt.DefaultView.AllowDelete = False
dt.DefaultView.AllowEdit = True
dt.DefaultView.AllowNew = True
[ô] vincula o modo de visao padrão da tabela ao datagrid
dgExcel.DataSource = dt.DefaultView
End Sub
End Class
[Ô]
Obrigado pela ajuda
Como eu imaginava, um DataTable.
Pelo que vi, você edita o grid depois de carregar os dados, certo?
Pelo que vi, você edita o grid depois de carregar os dados, certo?
isso mesmo
Ok. Um DataGridView é um composto de Linhas e colunas. Veja que existe uma propriedade chamada Rows, que é uma lista de DataGridViewRow e dentro de cada Ãtem dessa lista existe uma propriedade chamada Cell, que representa uma célula. Logo:
Dim arquivo as String
For Each linha In dgExcel.Rows
For Each valor in linha.Cells
[ô]Adicionar para o FileStream
arquivo = arquivo & valor.Value.ToString()
Next valor
Next linha
MessageBox.Show(arquivo)
[ô]aqui, faça a rotina para gravar o arquivo
Tópico encerrado , respostas não são mais permitidas