Eclipse下相对目录访问的问题 用Eclipse开发,建立了一个工程,现在想对工程根目录下的文件(作为配置文件使用的,就是一般的txt文件)进行读写,请问如何调用当前工程的相对目录?如果将该工程打包成为jar文件,那么class文件有该如何调用该相对目录呢?请赐教,谢谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 只要在eclipse插件环境里面可以只要下面的方法IWorkspaceRoot myWorkspaceRoot = ResourcesPlugin.getWorkspace().getRoot();IProject myProject = myWorkspaceRoot.getProject("projectName");IFolder myFolder = myProject.getFolder("folderName");IFile file=myFolder.getFile("fileName.txt");String configFile=file.getLocation().toString();//得到本地file system中的绝对路径或者简单一点IWorkspaceRoot myWorkspaceRoot = ResourcesPlugin.getWorkspace().getRoot();IFile file=(IFile)myWorkspaceRoot.findMember("/AAA/BBB/ccc.txt");//这里是从workspace开始的根 哦,不对,我想起来了,你不是在插件开发环境下吧?只是普通的project.如果是这样的话,可以通过getClass().getResource()这样的方法 下面的例子是使用ant进行打包的build.xml文件,你可以参考一下<?xml version="1.0"?><project name="PROJECT_SYS" basedir="." default="usage"> <property name="name" value="PROJECT_SYS"/> <property name="build.dir" value="bin"/> <property name="src.dir" value="src"/> <property name="lib.dir" value="lib"/> <property name="dist.dir" value="dist"/> <target name="usage"> <echo message=""/> <echo message="${name} build file"/> <echo message="-----------------------------------"/> <echo message=""/> <echo message="Available targets are:"/> <echo message=""/> <echo message="build --> Build the application"/> <echo message="jarfile --> Build the jar file"/> <echo message="mockfile --> Build the mock jar file"/> <echo message="junit --> Run JUnit Task"/> <echo message="clean --> Run Clean Task"/> </target> <path id="master-classpath"> <fileset dir="${lib.dir}"> <include name="*.jar"/> </fileset> </path> <target name="build" description="Compile main source tree java files"> <mkdir dir="${build.dir}"/> <copy todir="${build.dir}" preservelastmodified="true"> <fileset dir="${src.dir}"> <include name="*.*" /> </fileset> </copy> <javac destdir="${build.dir}" source="1.4" target="1.4" debug="true" deprecation="true" optimize="true" failonerror="true"> <src path="${src.dir}" /> <classpath refid="master-classpath" /> </javac> </target> <target name="jarfile" depends="build" description="Build jar file"> <jar destfile="${name}.jar"> <fileset dir="${build.dir}"> <include name="**/*.*"/> <include name="*.xml"/> <exclude name="log4j.properties"/> <exclude name="mock/**/*.*"/> <exclude name="test/**/*.*"/> <exclude name="${name}_Mock.xml"/> <exclude name="PROJECT_Config.xml"/> <exclude name="jdbc.properties"/> </fileset> </jar> </target> <target name="mockfile" depends="build" description="Build mock jar file"> <jar destfile="${name}_Mock.jar"> <fileset dir="${build.dir}"> <include name="**/db/*.*"/> <include name="**/dao/*.*"/> <include name="**/services/*.*"/> <include name="mock/**/*.*"/> <include name="*Mock.xml"/> <include name="log4.properties"/> <exclude name="test/**/*.*"/> <exclude name="jdbc.properties"/> </fileset> </jar> </target> <target name="clean" description="Clean"> <delete dir="${build.dir}" /> <delete> <fileset dir="."> <include name="TEST*" /> <include name="*.jar" /> </fileset> </delete> </target> </project> Edipse 哪里有下啊,给个地址啊~ JTree连接Sybase 请教:java的不同类中的函数可否线程同步? 浮点数为什么要用移码,而不用补码呢? 请教各位高手,关于swing里插入图片的问题 华为最后一轮面试完后,说我想法不成熟,让我回去写篇文章,再给他们看,大家说还有希望么? 一个java中的多线程的问题! jusched.exe是什么?装完1.4.2SDK出来的? 关于srtuts.jsp.bean中用的问题 100分求助-关于Jbuilder6.0中,菜单的制作! 关于SWING组件:JTree的问题.很急!谢谢! java问题 兄弟们帮我看看我能在广州拿多少钱一个月。。。。。
IProject myProject = myWorkspaceRoot.getProject("projectName");
IFolder myFolder = myProject.getFolder("folderName");
IFile file=myFolder.getFile("fileName.txt");
String configFile=file.getLocation().toString();//得到本地file system中的绝对路径或者简单一点
IWorkspaceRoot myWorkspaceRoot = ResourcesPlugin.getWorkspace().getRoot();
IFile file=(IFile)myWorkspaceRoot.findMember("/AAA/BBB/ccc.txt");
//这里是从workspace开始的根
<?xml version="1.0"?><project name="PROJECT_SYS" basedir="." default="usage"> <property name="name" value="PROJECT_SYS"/>
<property name="build.dir" value="bin"/>
<property name="src.dir" value="src"/>
<property name="lib.dir" value="lib"/>
<property name="dist.dir" value="dist"/>
<target name="usage">
<echo message=""/>
<echo message="${name} build file"/>
<echo message="-----------------------------------"/>
<echo message=""/>
<echo message="Available targets are:"/>
<echo message=""/>
<echo message="build --> Build the application"/>
<echo message="jarfile --> Build the jar file"/>
<echo message="mockfile --> Build the mock jar file"/>
<echo message="junit --> Run JUnit Task"/>
<echo message="clean --> Run Clean Task"/>
</target> <path id="master-classpath">
<fileset dir="${lib.dir}">
<include name="*.jar"/>
</fileset>
</path> <target name="build" description="Compile main source tree java files">
<mkdir dir="${build.dir}"/>
<copy todir="${build.dir}" preservelastmodified="true">
<fileset dir="${src.dir}">
<include name="*.*" />
</fileset>
</copy>
<javac destdir="${build.dir}" source="1.4" target="1.4" debug="true" deprecation="true" optimize="true" failonerror="true">
<src path="${src.dir}" />
<classpath refid="master-classpath" />
</javac>
</target>
<target name="jarfile" depends="build" description="Build jar file">
<jar destfile="${name}.jar">
<fileset dir="${build.dir}">
<include name="**/*.*"/>
<include name="*.xml"/>
<exclude name="log4j.properties"/>
<exclude name="mock/**/*.*"/>
<exclude name="test/**/*.*"/>
<exclude name="${name}_Mock.xml"/>
<exclude name="PROJECT_Config.xml"/>
<exclude name="jdbc.properties"/>
</fileset>
</jar>
</target>
<target name="mockfile" depends="build" description="Build mock jar file">
<jar destfile="${name}_Mock.jar">
<fileset dir="${build.dir}">
<include name="**/db/*.*"/>
<include name="**/dao/*.*"/>
<include name="**/services/*.*"/>
<include name="mock/**/*.*"/>
<include name="*Mock.xml"/>
<include name="log4.properties"/>
<exclude name="test/**/*.*"/>
<exclude name="jdbc.properties"/>
</fileset>
</jar>
</target> <target name="clean" description="Clean">
<delete dir="${build.dir}" />
<delete>
<fileset dir=".">
<include name="TEST*" />
<include name="*.jar" />
</fileset>
</delete>
</target>
</project>