Products Technologies Demo Docs Blog Support Company

File Format Detection

Sometimes, end-users change filenames or the suffix of a file. There are a variety of reasons to do this. In such cases, applications need to detect the file format of the document, before loading it into TX Text Control. To give you an idea how to solve this little problem, I have written a simplified function in VB.NET that detects two string file formats: RTF and HTML. I intend to write another binary-based function to detect the Microsoft Word file format (DOC), but this should give you…

File Format Detection

Sometimes, end-users change filenames or the suffix of a file. There are a variety of reasons to do this. In such cases, applications need to detect the file format of the document, before loading it into TX Text Control.

To give you an idea how to solve this little problem, I have written a simplified function in VB.NET that detects two string file formats: RTF and HTML.

I intend to write another binary-based function to detect the Microsoft Word file format (DOC), but this should give you an idea about the intention.

This function returns a valid TX Text Control StreamType. This can be used directly in TX Text Control's Load method.

Private Function checkFileFormat(ByVal path As String)
    Dim myFileRead As System.IO.TextReader
    myFileRead = System.IO.File.OpenText(path)
    Dim myChars As String

    myChars = myFileRead.ReadToEnd

    If myChars.StartsWith("{
tf") Then
        Return TXTextControl.StreamType.RichTextFormat
    ElseIf myChars.StartsWith("
        Return TXTextControl.StreamType.HTMLFormat
    Else
        Return TXTextControl.StreamType.PlainText
    End If
End Function

Private Sub Button1_Click(ByVal sender As System.Object,
        ByVal e As System.EventArgs) Handles Button1.Click
    Dim filename As String = "test.rtf"
    Dim Format As TXTextControl.StreamType = checkFileFormat(filename)
    TextControl1.Load(filename, Format)
End Sub

Stay in the loop!

Subscribe to the newsletter to receive the latest updates.

Related Posts

Windows FormsWPF.NET

Create a Table of Contents in Windows Forms using C#

This article explains how to create a table of contents in Windows Forms using the ribbon or programmatically. Creating a table of contents is required to organize large documents.


Windows FormsList.NET

Two Ways to Restart Numbered Lists in TX Text Control

In TX Text Control, numbered lists are continued by default and need to be reset when required. There is more than one way if you want to restart numbered lists in a document. In this article, two…


.NETSample

Paste Special: The Easy Way to Implement

In an older sample, I showed how to implement a paste special functionality by accessing the clipboard directly using .NET functionality. In version 15.0, we implemented this functionality…


.NETSampleSections

How to Remove All Section Breaks in a Document?

With version 14.0, we introduced document section breaks that allow you to have different page formats in the same document. Version 15.0 implements page columns that can be adjusted section-wise.…


.NETPrintingSample

Batch Printing: How to Print Documents in One Print Job

A typical requirement when printing loads of documents is managing the print jobs. A group of separate documents might be subsumed in a single print job. We just published a new sample in our…