python部分的代码几乎是来息此文章:
http://blog.sina.com.cn/s/blog_4419b53f0100abzb.html
我小部分改进之后代码如下:
#-*- coding:utf-8 -*-
# file :makeBasic.py
#
import os
import sys
import string
import datetime
# python 简单的脚本模板
def main():
if os.path.isfile(sys.argv[1]):
print '%s already exist!' % sys.argv[1]
sys.exit()
basic_template = open(sys.argv[1],'w') # create a file in write mode
today = datetime.date.today() # transform now to 'yyyy-mm-dd' s format
date = today.strftime('%Y')+'-'+today.strftime('%m')+'-'+today.strftime('%d')
filetypes = string.split(sys.argv[1],'.') # 判断文件类型
length = len(filetypes)
filetype = filetypes[length -1]
print 'file type is :'+filetype
if filetype == 'py':
print 'use python mode'
basic_template.writelines('#-*- coding:utf-8 -*-')
basic_template.write('\n')
basic_template.writelines('# file :'+sys.argv[1])
basic_template.write('\n')
basic_template.write('# date :'+date)
basic_template.write('\n')
basic_template.write('##----------------------------------------------------')
basic_template.write('\n')
print 'template create successfully'
else:
print 'not support other file time currently'
basic_template.close() # 关闭文件
if __name__ == '__main__':
main()
使用方法如下:
引用
banxi1988@banxi:~/work/python$ python makeBasic.py fileRead.py
file type is :py
use python mode
template create successfully
banxi1988@banxi:~/work/python$
而用java来写呢!我自己写了如下一个:
我自己对于Java比较熟悉点,所以用Java写得自认为还是不错的.
从结构等方面来看都是容错性啊等等:
package me.banxi.io;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.PrintWriter;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;
public class MakeCode{
public static void usage(){
StringBuilder builder = new StringBuilder(1024);
builder.append(" Usage:\n");
builder.append(" unix-like: $ java MakeCode yourSourceFileName \n");
builder.append(" example: $ java MakeCode HelloWorld.java");
builder.append(" -------------------the end ------------------------------");
System.out.println(builder.toString());
}//:usage
public static void notSupport(String fileName){
String []strs = fileName.split(".");
if(strs.length < 1) {
System.out.println("you have not give a file .suffix! file type of "+fileName+"are not support now!");
}else {
System.out.println("file type of "+strs[strs.length-1]+"are not support now!");
}
}//:notSupport
public static boolean cancelCreate( String name ){
System.out.println("file with name of "+name+"is already exists!\n");
System.out.println("do you want to build a new file?(y/n)");
Scanner scanner = new Scanner(System.in);
String yesOrNo = scanner.next();
if(yesOrNo.equalsIgnoreCase("y")) {
return false;
}
return true;
}//:isContinue
private static void createTemplate(File file) {
PrintWriter writer = null;
try {
writer = new PrintWriter(file);
StringBuilder builder = new StringBuilder(256);
builder.append("import java.io.*;\n");
builder.append("import java.util.*;\n");
builder.append("/**\n");
builder.append(" * @author yourName \n");
builder.append(" * @date "+(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date())));
builder.append("\n */\n");
builder.append("public class "+file.getName());
builder.append("{\n");
builder.append("\n");
builder.append("}\n");
writer.write(builder.toString());
writer.flush();
} catch (FileNotFoundException e) {
System.out.println("no such file:"+file.getAbsolutePath());
e.printStackTrace();
}finally {
if(writer != null) {
writer.close();
}
}
}// :createTemplate
public static void main(String ... args){
if(args.length < 1){
usage();
System.exit(1);
}//
String fileName = args[args.length -1];
if(fileName.endsWith(".java")){
File file = new File(fileName);
if(file.exists()){
if(cancelCreate(file.getName())){
System.exit(1);
}
}
createTemplate(file);
System.out.println("create java source template successfully!");
System.out.println("file's full name was:"+file.getAbsolutePath());
}else{
notSupport(fileName);
System.exit(1);
}
}//
}//:end MakeCode
/**
* 运行结果:
file with name of MyFileReader.javais already exists!
do you want to build a new file?(y/n)
y
create java source template successfully!
file's full name was:/home/banxi1988/work/tomcat7/JavaIo/MyFileReader.java
生成模板内容:
import java.io.*;
import java.util.*;
**
* @author yourName
* @date 2011-10-10 23:17:40
*
public class MyFileReader.java{
}
*/
python版的我修改之后如下:
主要修改了,如果没有传递参数,提示用法.
时期精确到时分秒.
如果已经有文件了提示是否创建新的:
#-*- coding:utf-8 -*-
# file :makeBasic.py
#
import os
import sys
import string
from datetime import datetime
# python 简单的脚本模板
def usage():
usages = """
Usage:
unix-like usage:$ python makeBasic myfile.py
example : $ python makeBasic helloworld.py
"""
print usages
def main():
if len(sys.argv) < 2:
usage()
sys.exit()
if os.path.isfile(sys.argv[1]):
print '%s already exist!' % sys.argv[1]
yesOrNo = raw_input ('do you still want to create a new file?(y/n)')
if(yesOrNo.strip().lower() == 'n'):
sys.exit()
basic_template = open(sys.argv[1],'w') # create a file in write mode
date = datetime.now().strftime('%Y-%m-%d %H:%M:%S')
filetypes = string.split(sys.argv[1],'.') # 判断将创建的文件是什么类型然后分别处理
length = len(filetypes)
filetype = filetypes[length -1]
print 'file type is :'+filetype
if filetype == 'py':
print 'use python mode'
basic_template.writelines('#-*- coding:utf-8 -*-')
basic_template.write('\n')
basic_template.writelines('# file :'+sys.argv[1])
basic_template.write('\n')
basic_template.write('# date :'+date)
basic_template.write('\n')
basic_template.write('##----------------------------------------------------')
basic_template.write('\n')
print 'template create successfully'
else:
print 'not support other file time currently'
basic_template.close() # 关闭文件
if __name__ == '__main__':
main()
分享到:
相关推荐
资源内项目源码是来自个人的毕业设计,代码都测试ok,包含源码、数据集、可视化页面和部署说明,可产生核心指标曲线图、混淆矩阵、F1分数曲线、精确率-召回率曲线、验证集预测结果、标签分布图。都是运行成功后才上传资源,毕设答辩评审绝对信服的保底85分以上,放心下载使用,拿来就能用。包含源码、数据集、可视化页面和部署说明一站式服务,拿来就能用的绝对好资源!!! 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、大作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.txt文件,仅供学习参考, 切勿用于商业用途。
wrf转mp4播放器1.1.1
内容概要:本文档详细介绍了如何在Simulink中设计一个满足特定规格的音频带ADC(模数转换器)。首先选择了三阶单环多位量化Σ-Δ调制器作为设计方案,因为这种结构能在音频带宽内提供高噪声整形效果,并且多位量化可以降低量化噪声。接着,文档展示了具体的Simulink建模步骤,包括创建模型、添加各个组件如积分器、量化器、DAC反馈以及连接它们。此外,还进行了参数设计与计算,特别是过采样率和信噪比的估算,并引入了动态元件匹配技术来减少DAC的非线性误差。性能验证部分则通过理想和非理想的仿真实验评估了系统的稳定性和各项指标,最终证明所设计的ADC能够达到预期的技术标准。 适用人群:电子工程专业学生、从事数据转换器研究或开发的技术人员。 使用场景及目标:适用于希望深入了解Σ-Δ调制器的工作原理及其在音频带ADC应用中的具体实现方法的人群。目标是掌握如何利用MATLAB/Simulink工具进行复杂电路的设计与仿真。 其他说明:文中提供了详细的Matlab代码片段用于指导读者完成整个设计流程,同时附带了一些辅助函数帮助分析仿真结果。
国网台区终端最新规范
《基于YOLOv8的智慧农业水肥一体化控制系统》(包含源码、可视化界面、完整数据集、部署教程)简单部署即可运行。功能完善、操作简单,适合毕设或课程设计
GSDML-V2.33-LEUZE-AMS3048i-20170622.xml
微信小程序项目课程设计,包含LW+ppt
微信小程序项目课程设计,包含LW+ppt
终端运行进度条脚本
幼儿园预防肺结核教育培训课件资料
python,python相关资源
《基于YOLOv8的智慧校园电动车充电桩状态监测系统》(包含源码、可视化界面、完整数据集、部署教程)简单部署即可运行。功能完善、操作简单,适合毕设或课程设计
deepseek 临床之理性软肋.pdf
SM2258XT量产工具(包含16种程序),固态硬盘量产工具使用
RecyclerView.zip
水务大脑让水务运营更智能(23页)
资源内项目源码是来自个人的毕业设计,代码都测试ok,包含源码、数据集、可视化页面和部署说明,可产生核心指标曲线图、混淆矩阵、F1分数曲线、精确率-召回率曲线、验证集预测结果、标签分布图。都是运行成功后才上传资源,毕设答辩评审绝对信服的保底85分以上,放心下载使用,拿来就能用。包含源码、数据集、可视化页面和部署说明一站式服务,拿来就能用的绝对好资源!!! 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、大作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.txt文件,仅供学习参考, 切勿用于商业用途。
大众捷达轿车前轮制动器设计
《基于YOLOv8的智能工厂压缩空气泄漏检测系统》(包含源码、可视化界面、完整数据集、部署教程)简单部署即可运行。功能完善、操作简单,适合毕设或课程设计
3米-翻抛机