私のアプリケーションでは、webcontent フォルダー内にファイルを書き込む必要がある関数があり、data というフォルダーがあり、実際のパス ( C:\Users\SanWin\workspace\ を指定した場合) を新しい名前で書き込む必要があります。 RoleAccessControl\data\ActivityLog.txt) ファイルを書き込みますが、プロジェクトを別のマシンで実行するときにこれを変更する必要があるため、これを使用して実際のパスを取得しました
ServletContext ctx = getServletContext();
String path = ctx.getRealPath("/data/ActivityLog.txt");
System.out.println(path);
印刷すると、コンソールに次のメッセージが表示されました
C:\Users\SanWin\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\RoleAccessControl\data\ActivityLog.txt
システムがこの行を取得する方法がわかりません
.metadata.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\
これは日食です。私は C:\Users\SanWin\workspace\RoleAccessControl\data\ActivityLog.txtのようなものを期待していました
行を取り除きたい実際のパスを取得する方法 (.metadata.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps)、インターネットで見たすべての可能性を調べて実行しましたが、失敗しました。申し訳ありません投稿が重複していた場合は、ご容赦ください。お時間をいただき、ご回答いただきありがとうございます。