Determine Number Of Fields And Records In Fixed Width File?
Feb 1, 2009I need to import a big fixed width text data file into SQL server. Before importing, how to determine how many fields and records in the file?
View 11 RepliesI need to import a big fixed width text data file into SQL server. Before importing, how to determine how many fields and records in the file?
View 11 RepliesI am aware that this is a visual basic dot net post. However It was extremely simple for me to write out a file in VB6 using lines such as the following snippet
[Code]...
I want basically to export an array A (I used zero based array here) with three columns and a particular value B in fixed widths, hence the @@@@@ which means 5 spaces in to a text file defined by the FreeFNum (FreeFileNumber).
I would like to use CSV and all the other formats but some scientific programs written in FORTRAN may not support them. Anyway my file output here needs to be in this fixed width format because it will be used by proprietary software that I have no access to the source code.
[Code]...
I'm using vb6 to read lines of txt files, using the code posted in ream.In.Code "Reading a Text file Line by Line". My question is how can I real a line with fixed column width, for example:
qwerty 12345 asdfg
asd 455 hfgdf
qhjkrty 1235 asdfg
The objective is to read each part of the row. In Visual Studio 2010 Beta version the code I present below that is actually working but it doesn't work in VB6.
Using Reader As New Microsoft.VisualBasic.FileIO.TextFieldParser("C:\teste.txt")Reader.TextFieldType = Microsoft.VisualBasic.FileIO.FieldType.FixedWidthReader.SetFieldWidths(8, 30, 25, 45, 57)
[code].....
How to delete a record or field from a fixed-width file in visual basic code?
View 1 RepliesI am trying to load a text file into an Access 2007 table. I know you can read the file line by line and then create a record out of each line. i was trying to see if this could be done with an INSERT INTO rather than cyclying through all lines of text. My text file is not character delimited but rather by fixed column width. For example:[code]The data in the example has spaces for readability but in reality the data are clumped together like so [code]I cant figure out how to tell the command how the data is structured. I know you can use a schema file but there's got to be a way to do this all through code.
View 1 RepliesI am learning to use TextFieldParser to read a fixed width text data file. It works great. I copied code below. Question: How to stop at the end of each line because I need to add some code?
Using tf As New TextFieldParser(fileName)
tf.TextFieldType = FileIO.FieldType.FixedWidth
tf.SetFieldWidths(60, 30, 20) //three columns
[Code].....
so i have a file that i need to read in vb.net. Each line is 32 chars long and each line consists of multiple fields. Meaning from char 1 to 9 it idicates ID then char 10 indicates an identifier,11-14 indicates a value field. I've looked at Readblock and it's not the tool for the job. Is there a way to break up each line into its respective fields other than just reading the whole line and breaking it up as a string?
View 3 RepliesI need to create a PDF drawing of our products with dimensions filled in, based on template files. After the user selects the proper template file for the desired product, a window should pop up that prompts the user for the necessary dimensions, such as width, length, etc. Then the program would fill in all the fields on the template form with the proper values. Some fields would just be filled with the exact values that the user enters in, but other fields may require a calculated value based on the entered values. ie. Overall width = nominal width + 6. So somehow I need to figure out how to make the template hold the equations. Can anyone offer me some guidance on how to make this work the way I described? Can iTextSharp determine if a PDF file has fields in it? Can it loop through all the fields & get the field names?
View 18 RepliesI have files that are one long line of text but are made up of individual segments. I have managed to parse the segments into a string array but now need to parse each segment into its individual fields, based upon a field structure defined by the first 2 characters of the segment.For example:
CA12345ABC999999XXPPPPPPPP55
CA segment (CA is first 2 characters of segment) has fields defined as:
Field Name,Start,Length
[code]....
I found away to read a fixed position text file, but I encounter a problem, I know which field I want to go and check, how can I jump directly to the field I need. Readfields does not helps.for instance I need to check on field 3 and 7 of the row before the next row is read.[code]is this my best approach to read a fixed position text file?
View 1 RepliesI want to set header column width for grid view. I tried HeaderStyle-Width="30px". But it is depending on Item columns. The column width is setting based on item value. But I want fixed width even if it has value or empty.
View 2 RepliesI need to write some fixed-width font (i.e Courier New or Consolas) text to a .net Winforms window in the Paint event - not using a label or any other winforms control - rather using a graphics object method to render the text onto the form's client area. I am having difficulty aligning text on different lines under headings even though it is fixed width font. How can I get a precise measurement of the width of a single character in the fixed-width font? How can I get 2 lines to print out aligned horizontally in successive text out calls?
For example:
Heading 1 Heading 2
Short Other text
A bit longer Still aligned?
I need a separate call to render each cell of text under Heading 2. For argument's sake - let's say column 1 items are printed in black and column 2 are printed in blue - we can't use the same text out call for the entire line.
I am trying to format a string of arbitrary length into a fixed width field for display.
Let's use a width of 20 as an example, and call the string to be formatted s. I'm adding the formatted string to a StringBuilder named b.
Dim b As New System.Text.StringBuilder()
Dim s as New String
If the string I want to display is shorter than 20 characters, I can do this:
b.Append(s.PadRight(20))
or
b.AppendFormat("{0,-20}", s)
So far, so good. But, if the string is longer than 20 characters, I want the string to be truncated to 20 characters as it is appended. The code above appends the entire string.
I tried this:
b.Append(s.Substring(0,20).PadRight(20))
But, this fires an exception if the string was shorter than 20 characters.
So, I ended up with:
b.Append(s.PadRight(20).Substring(0,20))
This seems to do the job. The PadRight prevents the exception by making sure thet string has 20 characters before the Substring is performed.
I was wondering if there is an alternate method that would look more elegant and avoid padding the string just so prevent the substring from causing an exception. Have I missed a feature of String.Format that can accomplish this in one step?
Edited to add solution:
I ended up with the following code:
Module Extensions
<Extension()> _
Function AppendFixed(ByVal b As StringBuilder, ByVal s As String, ByVal width As Integer) As StringBuilder
[Code]....
This uses an extension method to clean up the syntax, as suggested by Joel and Merlyn, and uses the StringBulider Append overloads to avoid creating new strings that will have to be garbage collected, as suggested by supercat.
Is there a simple way (without measuring characters using a Graphics object) to check if a font is fixed-width?
View 7 RepliesI'm developing a Point Of Sale (POS) app in VB.NET and .NET Framework 3.5 where multiple items can bought at a time. I need to print all items: their code, name quantity, price in a row-column manner.
SHOP NAME date
========== =====
SL CODE NAME QTY PRICE
== ===== ===== === =====
[code]....
The width of page is fixed but the height will be dynamic.The printout will be printed on rolled paper normally used in a POS system.How can this be done?
In Excel under Data Tab-Text to Columns-Fixed Width- and when next is pressed we get preview of Selected Data.
There a Scale is being designed(10, 20, ...). Is there any way in VB.net to do that scale or any other form of Implementation.
just say I have a string as follows:
This is a long long lojngoi sudofi usdfh ksjdhfjk sdhfgkj shgh sdfhg sdfg sdfgdsfg ... I want to specify a maximum width (eg 180) for my string and get the height returned... the picture below explains in more detail:
I am using ms-access 2002. I have to export the data of a ms-access table in Fixed Width format. To accomplish this I am using DoCmd.TransferText method.
DoCmd.TransferText acExportFixed, "schema.ini", "table_ABC", "C: estingTestData.txt"
But I am getting error message: "Run time error-3625 The text file specification 'schema.ini' does not exist.You cannot import, export, or link using the specification."
Here schema.ini is at same location as of text file. i.e. "C: esting"
I tried with
DoCmd.TransferText acExportFixed, "C: estingschema.ini", "table_ABC", C: estingTestData.txt"
but no success.
For delimited format it is working fine
DoCmd.TransferText acExportDelim, "", "VDMMEMBS", "C: estingTestData.txt"
I have gone through the link [URL]
Error message is same as of me but example shown is related to import of txt file.
I want to convert numbers from 0 to 15 like that
[Code]...
Problem is that when we convert 2 to binary number it gives only 10 in binary, but i want to convert 2 to 4 bit binary number 0010.
i want to take a comma delimited text file and then select all unique records based on one of the fields in the text file. should i read the text file into a data table or just use a data reader?
View 7 RepliesI'm working with XML for the first time and I'm not able to read the number of records from an existing files. As of now I have my records this way:
-<DataNodes>
-<Data>
<numOne>25</numOne>
[Code].....
The question is quite simple for all of you . I have a binary file . A description for this file says that
[Code]...
I have to export the data from the database to .txt file, I have the code below that does export it to .txt file but I'm having problems with this code because the data that I'm exporting is about 5 000000 records, it is quite slow and sometimes the pc can't handle it and stops the exporting.
Dim saveFile As New SaveFileDialog
If saveFile.ShowDialog = Windows.Forms.DialogResult.OK Then
command = New SqlCommand
[Code]....
I need to format a string in a fixed number of characters.
For example, if someone type TWO
It has too save in the variable
000TWO
if type THREE
0THREE
Always 6 characters and fill the rest with zeros on the left.
I have added three columns to the ListView control,
listView1.Columns.Add("id", listView1.Width / 3); listView1.Columns.Add("Name", listView1.Width / 3); listView1.Columns.Add("Address", listView1.Width / 3);
Assume the ListView1.Width is "30", then each column should be in event width of 10. Furthermore thereshould only be three columns becuase i have added only three columns. However, when i resize teh form, the listview controls shows an additional column.
How this was added? How do i fix this, so that when i add 3 columns it will have only three columns even when resized the form or not
Anybody have tried having fixed number (painted) of rows on a datagridview regardless of the number of rows of the datasource??? i.e. datagridview will still show 20 rows even if the the datasource have 8 rows only? like gridlines already painted as is - with/without datasource binded.
View 12 RepliesIn my first attempt to create a Class that contains something useful (if you will), I am a little lost what a sound way to proceed is. I am trying to make a table that has fields and records. Perhaps imagine a tiny spreadsheet. So, I create my Class. Properties might include the number of columns, the column titles, and the number of rows or records. I then think the thing to do is create a couple of structures to be used within the class. Thus far I have this:
Imports System.Console
Public Class ConsoleTable
Property NumberofCOlumns As Int32
[Code]....
Problems I am creating in my mind include:
1) In the Field Structure, could I make the FieldValue so that I can change the data type? Meaning sometimes I want an instance of a Field to hold a string,or an integer, or a decimal.
2) In the Record structure, for any given instance of one I don't know the number of fields it will hold until I create the new instance. I tried Public RecordFields(FieldCount) As Field in the Structure, but that's not allowed.
I then used Public RecordFields() As Field, and then in my code used the ReDim method. Is there a better way?
3) With the Table Class, same problem. The number of records within any instance of the class needs to be dynamic.
Assuming this schema:
Table1 (Col1 int, Col2 str, Col3 str, ...)
Table2 (Col1 int, Col2 str, Col3 str, ...)
[Code]....
I need to select all records from Table2 where there are NO records in Table1 having matches of both Col2 & Col3. For instance, Table 2 records where Table1.Col2 <> Table2.Col2 AND Table1.Col3 <> Table2.Col3.
How do i determine the pixel width and pixel height of the largest image i can paint onto the graphics object of a printer while inside a printpage event?
Imports
System.Drawing
Class
[Code]......
Currently working on a project to automate the input based on the Summary file (xls format)
1. I want to be able to do the following: update, append, delete and populate the records to the various files based on two distinct fields, column A & F (see attached file).
2. Researched the process, requires knowing VB codes, are you familiar with this language? If so, how can I simplify the process? Please advise.
3. The files will reside on the SPP.