How to validate if a file is executable in Java

Cloudmersive
2 min readFeb 14, 2020

--

Our goal today is to check the validity of a file by testing if it can be executed. Nothing to worry about. We’ve got an API for that.

Installing our library will get our ball rolling. All that this requires is adding two reference snippets to the Maven POM file.

1st

<repositories>
<repository>
<id>jitpack.io</id>
<url>https://jitpack.io</url>
</repository>
</repositories>

2nd

<dependencies>
<dependency>
<groupId>com.github.Cloudmersive</groupId>
<artifactId>Cloudmersive.APIClient.Java</artifactId>
<version>v3.34</version>
</dependency>
</dependencies>

Now that our library is installed, we can move right along to calling our function, validateDocumentExecutableValidation, and providing a file to validate.

// Import classes://import com.cloudmersive.client.invoker.ApiClient;//import com.cloudmersive.client.invoker.ApiException;//import com.cloudmersive.client.invoker.Configuration;//import com.cloudmersive.client.invoker.auth.*;//import com.cloudmersive.client.ValidateDocumentApi;ApiClient defaultClient = Configuration.getDefaultApiClient();// Configure API key authorization: ApikeyApiKeyAuth Apikey = (ApiKeyAuth) defaultClient.getAuthentication("Apikey");Apikey.setApiKey("YOUR API KEY");// Uncomment the following line to set a prefix for the API key, e.g. "Token" (defaults to null)//Apikey.setApiKeyPrefix("Token");ValidateDocumentApi apiInstance = new ValidateDocumentApi();File inputFile = new File("/path/to/file"); // File | Input file to perform the operation on.try {DocumentValidationResult result = apiInstance.validateDocumentExecutableValidation(inputFile);System.out.println(result);} catch (ApiException e) {System.err.println("Exception when calling ValidateDocumentApi#validateDocumentExecutableValidation");e.printStackTrace();}

Our file will now be tested and its validity will be returned in this format:

{
"DocumentIsValid": true,
"ErrorCount": 0,
"WarningCount": 0,
"ErrorsAndWarnings": [
{
"Description": "string",
"Path": "string",
"Uri": "string",
"IsError": true
}
]
}

--

--

Cloudmersive
Cloudmersive

Written by Cloudmersive

There’s an API for that. Cloudmersive is a leader in Highly Scalable Cloud APIs.

No responses yet