FreeCAD
1#!/usr/bin/python
2# -*- coding: utf-8 -*-
3# (c) 2004 Werner Mayer LGPL
4
5import os, sys6
7# os.chdir("E:\\Develop\\FreeCADWin\\scripts")
8
9
10try:11file = open(sys.argv[1], encoding="utf-8")12except TypeError:13file = open(sys.argv[1])14
15if len(sys.argv) > 4:16sys.stderr.write("Wrong Parameter\n Usage:\n PythonToCPP Infile.py [Outfile][Variable]\n")17
18if len(sys.argv) > 2:19try:20out = open(sys.argv[2], "w", encoding="utf-8")21except TypeError:22out = open(sys.argv[2], "w")23else:24out = sys.stdout25
26if len(sys.argv) > 3:27identifier = sys.argv[3]28else:29identifier = os.path.basename(sys.argv[1])30identifier = identifier[:-3]31
32lines = file.readlines()33
34# We want to use this script for files in another directory, so we extract the actual file name
35out.write("const char " + identifier + "[] =")36
37for line in lines:38# remove new line39line2 = line.rstrip()40# replace special chars41line2 = line2.replace("\\", "\\\\")42line2 = line2.replace('"', '\\"')43line2 = line2.replace("'", "\\'")44
45# output46# out.write(line)47out.write('"' + line2 + '\\n"\n')48
49out.write(";\n\n\n")50