Android Code Snippet Test if a file is a Java Class File

Sub Name: Is Class File

Description: Determines whether a file looks like it could be a Java Class file (compiled Java code).

B4X:
Sub IsClassFile(Path As String, FileName As String) As Boolean
    If Not(File.Exists(Path,FileName)) OR File.IsDirectory(Path,FileName) Then Return False
    If File.Size(Path,FileName) < 4 Then Return False
    Dim RAF As RandomAccessFile
    RAF.Initialize2(Path,FileName,True,False)
    Dim result As Boolean = RAF.ReadInt(0) = 0xCAFEBABE
    RAF.Close
    Return result
End Sub

Depends On: RandomAccesFile
Tags: Class File, Java, File Testing, Magic Numbers

Note: This also works on B4J.
 
Top