나는 이것이 쉬운 일이 될 것이라고 생각했지만. . . 자바 프로그램이 사용자의 Windows 파일 연결을 가져 오도록하고 싶습니다. 즉, 사용자가 .txt 파일, .cvs 파일 등을 여는 데 사용하는 정보를 알고 싶습니다. assoc 및 ftype 명령은 해당 정보를 제공하지만 사용자는 제공하지 않습니다. 즉, 텍스트 편집기를 메모장 ++로 설정 한 경우 assoc 및 ftype이 표시하지 않습니다. 대신 시스템 기본값 인 메모장이 표시됩니다. 레지스트리에서 정보를 얻어야하는 것처럼 보입니다.하지만 두 가지 문제가 있습니다. 1) 정확한 레지스트리 키를 알고 싶습니다. ("reg 검색어 HKEY_CURRENT_USER, HKEY_CLASSES_ROOT 등을 보았습니다.) 2) 레지스트리에서 키를 가져 오는 방법을 모르겠습니다. . 나는 JNI가 언급하지만 세부 사항을 파악하지 않은 보았다. 어떤 힌트를 주시면 감사.Java를 통해 Windows 파일 연결 얻기
는답변
Win7에, 당신은 "클래스"를 찾을 수 있습니다 *
HKLM\SOFTWARE\Classes\<extension>\(Default)
의 각 파일 확장자에 대한 키
예 : 내 컴퓨터에서
HKLM\SOFTWARE\Classes\.txt
에는 txtfile
(기본값) 키가 있습니다. 내 시스템에서 ...\shell\open\command
의 서브 패스가 있어야
HKLM\SOFTWARE\Classes\txtfile
,
HKLM\SOFTWARE\Classes\txtfile\shell\open\command\(Default)
은 다음과 같은 경로에
, 당신은 클래스txtfile
의 파일을 엽니 다 찾을 수 있습니다
%SystemRoot%\system32\NOTEPAD.EXE %1
.txt 파일을 여는 실행 파일을 찾기 위해 구문 분석 할 수있는 파일.
사용자 고유의 사용자 정의, 당신은 모든 것을이 나는 당신의 응용 프로그램에 대해 가능하면 MadProgrammer의 제안을 좋아했다되고
HKCU\Software\Classes\
와
HKLM\SOFTWARE\Classes\
을 대체 할 수 있습니다.
* "class"에 대해 더 나은 이름이있을 것입니다. 단지 모릅니다.
원하는대로해야하는 Eclipse의 프로그램 클래스를 살펴보십시오. http://help.eclipse.org/helios/index.jsp?topic=%2Forg.eclipse.platform.doc.isv%2Freference%2Fapi%2Forg%2Feclipse%2Fswt%2Fprogram%2FProgram.html.
프로그램을 시작하려면 Desktop 클래스를 사용하십시오 (예 : MadProgrammer 권장)
그것은 내가 찾고있는 것 이상입니다. "Program.launch ("c : /trash/a.txt ");" 필자가 선호하는 텍스트 편집기를 시작합니다. 많은 감사합니다! – ArtD
그러나 Eclipse에서는 Program.launch()가 작동하지만 Jar 파일에서는 작동하지 않습니다. 그래서 그것이 내 다음 과제입니다. 더 많은 정보가 인정되었습니다. – ArtD
Program을 사용하기 전에 초기화가 필요하다고 생각합니다. 프로그램 클래스를 사용하기 전에 swt 디스플레이를 인스턴스화 할 수 있습니까? – mbelow
- 1. cmd를 통해 Windows 파일 설명 얻기
- 2. 연결 재설정 중 Java를 사용하여 FTPS를 통해 파일 전송
- 3. java를 사용하여 usb- 직렬 케이블을 통해 연결
- 4. Java를 통해 Chrome에 저장된 HAR 파일
- 5. Java를 통해 SQL 스크립트 파일 실행
- 6. Java를 통해 Android 파일 시스템을 다시 마운트
- 7. Java를 통해 프로그래밍 방식으로 HPGL 파일 압축
- 8. C# - 임의의 파일에 대한 Windows 연결 얻기
- 9. Java를 사용하여 외부 데이터베이스에 연결
- 10. Java를 MySQl 데이터베이스에 연결
- 11. Java를 사용하여 MySQL에 연결
- 12. Java를 사용하여 PostgreSQL 8.2와 연결
- 13. java를 사용하여 https 파일 업로드?
- 14. cmd를 통해 인터넷 속도 얻기 (Windows)
- 15. Windows 레지스트리 파일 연결 메뉴
- 16. MySQL : Java를 사용하여 로컬로 연결
- 17. JAVA를 통해 CSV 읽기
- 18. Java를 통해 음악 재생
- 19. java를 사용하여 ssh를 통해 원격 mysql 데이터베이스에 연결
- 20. Python ftplib, ftp를 통해 최신 파일 얻기
- 21. Windows 배치 스크립트에서 확장명이없는 파일 이름 얻기
- 22. 연결 풀에서 데이터베이스 연결 얻기
- 23. Java를 사용하여 암호로 보호 된 UNC에 연결
- 24. Windows에서 java를 사용하는 파일 보안
- 25. Windows 플랫폼의 java를 사용하여 USB를 통해 프린터와 통신하는 방법
- 26. Windows 2000 Pro에서 Java를 통해 활성 프로세스 가져 오기
- 27. Java를 사용하여 원격 파일 읽기
- 28. Java를 통해 Oracle Sql 스크립트를 실행하십시오.
- 29. PHP를 통해 연결 연결 재설정
정확히 달성하고자하는 것은 무엇입니까? [Desktop] (http://docs.oracle.com/javase/7/docs/api/java/awt/Desktop.html)은 관련 편집자에서 파일을 열어 파일을 열고 편집 할 수 있습니다. 자세한 내용 [여기] (http://docs.oracle.com/javase/tutorial/uiswing/misc/desktop.html) – MadProgrammer
사용중인 Windows 버전은 무엇입니까? – jedwards
예, java.awt.데스크톱이 필요한 것 같습니다. 저는 Windows 7을 사용하고 있지만 크로스 플랫폼을 원합니다. – ArtD