Java 프로그램에 바이너리 라이센스 파일을 제공해야합니다. 이 작업을 수행하는 가장 좋은 방법은 무엇입니까? 데이터는 항상 변경되므로 파일을 작성하고 매번 다시 읽지 않아도됩니다.자바 프로그램에 복합 인수 보내기
데이터는 PHP 페이지
Java 프로그램에 바이너리 라이센스 파일을 제공해야합니다. 이 작업을 수행하는 가장 좋은 방법은 무엇입니까? 데이터는 항상 변경되므로 파일을 작성하고 매번 다시 읽지 않아도됩니다.자바 프로그램에 복합 인수 보내기
데이터는 PHP 페이지
에 를 입력 한 같은 역할을 PHP는 간부() 명령 을 사용하는 것입니다
는, 당신은 방법이 주 이름 한 것이다
이 같은 : 첫 번째 인수로 라이센스를 전송하는 경우public static void main(String[] args) { //If this is just a single binary string, args[0] will contain the license. }
는
args[0]
는 들어오는 라이센스 될 것입니다.지금 말하면, 라이센스를 보내기 전에 base64 인코딩을 원할 수 있습니다. 이렇게하면 문자 집합이 전송 될 때 라이센스 파일의 영향을받지 않게됩니다.
PHP는이 목적으로
base64_encode()
함수를 가지고 있습니다.Java는 이상하게도 Base64 디코딩 내장 기능을 가지고 있지 않습니다 (공식적으로는 공식적인 것이 아닙니다). 그러나 Apache Commons Codec에는 디코더가 포함되어 있습니다.
다시 라이센스를 가정하는 것은 전달 된 우선은 다음과 같습니다
import org.apache.commons.codec.binary.Base64; public class GiveMeANameHere { public static void main(String[] args) { Base64 decoder = new Base64(); byte[] license = decoder.decode(args[0]); // Do whatever you need to with the license. // Other strings passed in will appear as elements in args array } }
회원님이 패키지 경우 자바 코드가 어느
-cp path/to/commons-codec-1.4.jar
를 사용하여 클래스 경로의로 아파치 코 몬즈 코덱 항아리를 통과해야하거나 나갈 것 JAR 파일을 매니페스트 파일에 저장하십시오.
어떤 파일의 경로를 넘겨 약에서 오는?
확인
당신은 "interprocesscommunication"같은 것을 사용할 수 는
는 - 원격 메소드 호출은 (RMI)
http://java.sun.com/products/jdk/rmi/
- 단순 개체 액세스 프로토콜 (SOAP)
http://www.soaprpc.com/software/
http://java.sun.com/xml/jaxm/
http://ws.apache.org/soap/features.html
파일이 아니며 PHP 페이지에서 전달되는 데이터입니다. – jax
처럼 소리 HTTP를 통해 직접 오는 InputStream
을 읽고 싶습니다. 파일 업로드 경로가 끝나면 Commons FileUpload이 (가) 많은 작업을 수행했습니다.
사용자 기본 설정 (java.util.prefs)에 라이센스 파일의 URL을 저장하십시오. 사용자 기본 설정이 새 것이거나 URL 및/또는 해당 내용이 더 이상 유효하지 않으면 사용자에게 새 URL을 묻는 메시지를 표시 한 다음 다시 기본 설정에 저장합니다. 그런 다음 URL보기의 내용을 가져올 수 있습니다. java.net.URL.openStream() - 파일이나 웹 주소와 마찬가지로 작동합니다. 볼이
은
에서 무엇을 제공 할 예정입니까? 좀 더 명확하게 설명하십시오 : "항상 바뀔 것입니다". – OlimilOops
파일에 복잡한 인수를 프로그램에 건네 줍니까? 수시로 변경해야하는 경우 이전 라이센스 데이터를 캐싱하고 파일 액세스 시간을 확인하여 업데이트해야하는지 여부를 결정하십시오. – corsiKa
데이터는 PHP 페이지에서 가져온 것입니다 ... 죄송합니다. – jax