2014-02-19 35 views
0

我想構建一個可以爲我的C++源文件生成頭文件的excel文件。我們以前使用excel生成.h文件,但我不知道這背後的邏輯(希望一些宏使用這個)。使用excel生成C++頭文件的宏

我的頭文件包含很多數據,我的目的是通過excel文件給出「MYapp Alpha 0.0.3」,因爲每個版本的版本號會發生變化。如果我使用的是excel文件,那麼我可以編輯該excel文件,併爲我創建.h文件,稍後還可以通過excel文件進​​行配置。

是否可以寫宏編輯「MYAPP阿爾法0.0.3」不接觸其他

#define APP_FLASH_APP_ID 0x123 
#define APP_VERSION_NUM "MYapp Alpha 0.0.3 " 
#define APP_PRODUCT_NAME "TPI " 
#define APP_DESCRIPTION_STR APP_PRODUCT_NAME APP_VERSION_NUM 
#define APP_RELEASE_DATE_STR "10/11/13" 
#define APP_SOFTWARE_PARTNUM_LEN 10 

需要一些有價值的幫助或建議

有一個偉大的日子

回答

0

嗯,基本上一.h文件是一個文本文件。所以你需要做一些字符串處理,打開一個文本文件,在其中打印數據並關閉它。

要打開和關閉一個文本文件,使用這樣的:

Dim fso As Object 
Set fso = CreateObject("Scripting.FileSystemObject") 
Dim oFile As Object 
Set oFile = fso.CreateTextFile("D:\test.h") 
oFile.WriteLine "tfadfadsest" 
oFile.Close 
Set fso = Nothing 
Set oFile = Nothing 
0

我認爲這可以幫助你:

Sub test() 

    Const strVerNumber As String = "0.0.4" 

    Dim FS, TSsource 
    Set FS = CreateObject("Scripting.FileSystemObject") 
    Set TSsource = FS.OpenTextFile("C:\test.txt", 1, 2) 

    Dim tmpString As String 
    tmpString = TSsource.ReadAll 
    TSsource.Close 

    tmpString = Replace(tmpString, _ 
         "MYapp Alpha 0.0.3", _ 
         "MYapp Alpha " & strVerNumber) 

    Dim TSout 
    Set TSout = FS.Createtextfile("C:\testOUT.txt", True) 

    TSout.Write tmpString 
    TSout.Close 

End Sub 

見這些方法:OpenTextFileCreateTextFileReadAllWrite

0

你是否在談論這樣的事情:

公式: 1

結果: 2

+0

你很好地理解我的需要。我需要exaxtly相同,需要複製在一個固定的位置說:「c:/ user/mydata」 我真正的需要是將它保存在2個文件中一個* .h和其他* .opt。兩者都是固定的位置 – Sijith