Sample code for 30+ languages & platforms
Xojo Plugin

Implement Preprocessor #include with StringBuilder

Demonstrates how to implement #include with a Chilkat StringBuilder.

Chilkat Xojo Plugin Downloads

Xojo Plugin
// First build a string that has a preprocessor include
Dim sbSrc As New Chilkat.StringBuilder
Dim success As Boolean
success = sbSrc.Append("1" + EndOfLine.Windows + "2" + EndOfLine.Windows + "3" + EndOfLine.Windows)
success = sbSrc.Append("#include <qa_data/txt/helloWorld.txt>" + EndOfLine.Windows)
success = sbSrc.Append("4" + EndOfLine.Windows + "5" + EndOfLine.Windows)

System.DebugLog(sbSrc.GetAsString())

// sbSrc contains:
// 	1
// 	2
// 	3
// 	#include <qa_data/txt/helloWorld.txt>
// 	4
// 	5

// The qa_data/txt/helloWorld.txt file contains "Hello World!"

Dim filePath As String
filePath = sbSrc.GetAfterBetween("#include","<",">")
If (sbSrc.LastMethodSuccess <> True) Then
    System.DebugLog("No #include's found.")
    Return
End If

System.DebugLog("filePath: " + filePath)

// Load the contents of the filePath
Dim sbIncludeFile As New Chilkat.StringBuilder
success = sbIncludeFile.LoadFile(filePath,"utf-8")

// Replace the first occurrence of #include <...> line with the contents of the include file.
success = sbSrc.ReplaceAllBetween("#include",">",sbIncludeFile.GetAsString(),True)

System.DebugLog(sbSrc.GetAsString())

// sbSrce now contains:
// 	1
// 	2
// 	3
// 	Hello World!
// 	4
// 	5