zoukankan      html  css  js  c++  java
  • 让电脑帮我写点代码(脚本字符串)

    写程序用到了配置文件,感觉lua比较适合,就选lua了。
    开始时所有配置都从文件加载,直接调用一个函数就OK了,后来考虑到如果配置文件不存在的话程序也要正常运行,所以程序需要默认配置。
    可我不想改变原来的结构,考虑将默认的配置脚本以字符串的形式硬编码在程序里面,这时遇到一个问题 :默认配置大概6~7K的大小,如果一行行的敲,那感觉肯定是非常不爽……

    这重复性的劳动就交给电脑做吧,最后决定将这部分代码让电脑写(我之前写过了,它照着抄就是了 *_*)……
    可它不写啊,那好吧,我写个python代码教它吧:

     1 #! /usr/bin/python
    2 # fileName : writeCode.py
    3 # Author : Mike
    4 # E-Mail : Mike_Zhang@live.com
    5
    6 import string
    7
    8 endLinePos = -1 # windows '\n'
    9 #endLinePos = -2 # Linux '\r\n'
    10
    11 fin = file("cnf.lua","r")
    12 fout = file("code.cpp","w")
    13 srcStr = '\"'
    14 dstStr = '\\\"'
    15 varNameStr = "luaScriptStr"
    16
    17 for line in fin.readlines() :
    18 if not line.split() : continue
    19 tmp2 = ''
    20 tmp2 += varNameStr
    21 tmp2 += ' += \"'
    22
    23 if line.count(srcStr) > 0 :
    24 nStartPos = 0
    25 nPos = 0
    26 while True :
    27 nPos = line.find(srcStr,nStartPos)
    28 if nPos == -1 :
    29 tmp2 += line[nStartPos:endLinePos:]
    30 break
    31 tmp2 += line[nStartPos:nPos:]
    32 tmp2 += dstStr
    33 nStartPos = nPos+len(srcStr)
    34 else:
    35 tmp2 += line[:endLinePos:]
    36 tmp2 += '\\n\";\n'
    37 print tmp2,
    38 fout.write(tmp2)
    39 fout.close()
    40 fin.close()
    41 raw_input()


     

  • E-Mail : Mike_Zhang@live.com
  • 转载请注明出处,谢谢!
查看全文
  • 相关阅读:
    Html5 Input 类型
    Html5 部分特性
    Asp.net Mvc4 基于Authorize实现的模块访问权限
    第11天知识点总结
    C# string类型和byte[]类型相互转换
    C#中AppDomain.CurrentDomain.BaseDirectory及各种路径获取方法
    Socket 学习
    C#中的Dictionary字典类介绍
    js判断客户端是pc还是手机
    input type="file" accept="image/*"上传文件慢的问题解决办法
  • 原文地址:https://www.cnblogs.com/MikeZhang/p/2303831.html
  • Copyright © 2011-2022 走看看