FileIOUtils.smali
.class public final Lcom/blankj/utilcode/util/FileIOUtils;
.super Ljava/lang/Object;
.source "FileIOUtils.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;
}
.end annotation
# static fields
.field private static sBufferSize:I
# direct methods
.method static constructor <clinit>()V
.registers 1
.line 36
const/high16 v0, 0x80000
sput v0, Lcom/blankj/utilcode/util/FileIOUtils;->sBufferSize:I
return-void
.end method
.method private constructor <init>()V
.registers 3
.line 38
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 39
new-instance v0, Ljava/lang/UnsupportedOperationException;
const-string/jumbo v1, "u can\'t instantiate me..."
invoke-direct {v0, v1}, Ljava/lang/UnsupportedOperationException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method private static createOrExistsDir(Ljava/io/File;)Z
.registers 2
.param p0, "file" # Ljava/io/File;
.line 939
if-eqz p0, :cond_17
invoke-virtual {p0}, Ljava/io/File;->exists()Z
move-result v0
if-eqz v0, :cond_f
invoke-virtual {p0}, Ljava/io/File;->isDirectory()Z
move-result v0
if-eqz v0, :cond_17
goto :goto_15
:cond_f
invoke-virtual {p0}, Ljava/io/File;->mkdirs()Z
move-result v0
if-eqz v0, :cond_17
:goto_15
const/4 v0, 0x1
goto :goto_18
:cond_17
const/4 v0, 0x0
:goto_18
return v0
.end method
.method private static createOrExistsFile(Ljava/io/File;)Z
.registers 3
.param p0, "file" # Ljava/io/File;
.line 927
const/4 v0, 0x0
if-nez p0, :cond_4
return v0
.line 928
:cond_4
invoke-virtual {p0}, Ljava/io/File;->exists()Z
move-result v1
if-eqz v1, :cond_f
invoke-virtual {p0}, Ljava/io/File;->isFile()Z
move-result v0
return v0
.line 929
:cond_f
invoke-virtual {p0}, Ljava/io/File;->getParentFile()Ljava/io/File;
move-result-object v1
invoke-static {v1}, Lcom/blankj/utilcode/util/FileIOUtils;->createOrExistsDir(Ljava/io/File;)Z
move-result v1
if-nez v1, :cond_1a
return v0
.line 931
:cond_1a
:try_start_1a
invoke-virtual {p0}, Ljava/io/File;->createNewFile()Z
move-result v0
:try_end_1e
.catch Ljava/io/IOException; {:try_start_1a .. :try_end_1e} :catch_1f
return v0
.line 932
:catch_1f
move-exception v1
.line 933
.local v1, "e":Ljava/io/IOException;
invoke-virtual {v1}, Ljava/io/IOException;->printStackTrace()V
.line 934
return v0
.end method
.method private static createOrExistsFile(Ljava/lang/String;)Z
.registers 2
.param p0, "filePath" # Ljava/lang/String;
.line 923
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->getFileByPath(Ljava/lang/String;)Ljava/io/File;
move-result-object v0
invoke-static {v0}, Lcom/blankj/utilcode/util/FileIOUtils;->createOrExistsFile(Ljava/io/File;)Z
move-result v0
return v0
.end method
.method private static getFileByPath(Ljava/lang/String;)Ljava/io/File;
.registers 2
.param p0, "filePath" # Ljava/lang/String;
.line 919
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->isSpace(Ljava/lang/String;)Z
move-result v0
if-eqz v0, :cond_8
const/4 v0, 0x0
goto :goto_d
:cond_8
new-instance v0, Ljava/io/File;
invoke-direct {v0, p0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
:goto_d
return-object v0
.end method
.method private static is2Bytes(Ljava/io/InputStream;)[B
.registers 8
.param p0, "is" # Ljava/io/InputStream;
.line 957
const/4 v0, 0x0
if-nez p0, :cond_4
return-object v0
.line 958
:cond_4
const/4 v1, 0x0
.line 960
.local v1, "os":Ljava/io/ByteArrayOutputStream;
:try_start_5
new-instance v2, Ljava/io/ByteArrayOutputStream;
invoke-direct {v2}, Ljava/io/ByteArrayOutputStream;-><init>()V
move-object v1, v2
.line 961
sget v2, Lcom/blankj/utilcode/util/FileIOUtils;->sBufferSize:I
new-array v2, v2, [B
.line 963
.local v2, "b":[B
:goto_f
sget v3, Lcom/blankj/utilcode/util/FileIOUtils;->sBufferSize:I
const/4 v4, 0x0
invoke-virtual {p0, v2, v4, v3}, Ljava/io/InputStream;->read([BII)I
move-result v3
move v5, v3
.local v5, "len":I
const/4 v6, -0x1
if-eq v3, v6, :cond_1e
.line 964
invoke-virtual {v1, v2, v4, v5}, Ljava/io/ByteArrayOutputStream;->write([BII)V
goto :goto_f
.line 966
:cond_1e
invoke-virtual {v1}, Ljava/io/ByteArrayOutputStream;->toByteArray()[B
move-result-object v0
:try_end_22
.catch Ljava/io/IOException; {:try_start_5 .. :try_end_22} :catch_36
.catchall {:try_start_5 .. :try_end_22} :catchall_34
.line 972
:try_start_22
invoke-virtual {p0}, Ljava/io/InputStream;->close()V
:try_end_25
.catch Ljava/io/IOException; {:try_start_22 .. :try_end_25} :catch_26
.line 975
goto :goto_2a
.line 973
:catch_26
move-exception v3
.line 974
.local v3, "e":Ljava/io/IOException;
invoke-virtual {v3}, Ljava/io/IOException;->printStackTrace()V
.line 977
.end local v3 # "e":Ljava/io/IOException;
:goto_2a
nop
.line 978
:try_start_2b
invoke-virtual {v1}, Ljava/io/ByteArrayOutputStream;->close()V
:try_end_2e
.catch Ljava/io/IOException; {:try_start_2b .. :try_end_2e} :catch_2f
.line 982
goto :goto_33
.line 980
:catch_2f
move-exception v3
.line 981
.restart local v3 # "e":Ljava/io/IOException;
invoke-virtual {v3}, Ljava/io/IOException;->printStackTrace()V
.line 966
.end local v3 # "e":Ljava/io/IOException;
:goto_33
return-object v0
.line 971
.end local v2 # "b":[B
.end local v5 # "len":I
:catchall_34
move-exception v0
goto :goto_50
.line 967
:catch_36
move-exception v2
.line 968
.local v2, "e":Ljava/io/IOException;
:try_start_37
invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
:try_end_3a
.catchall {:try_start_37 .. :try_end_3a} :catchall_34
.line 969
nop
.line 972
:try_start_3b
invoke-virtual {p0}, Ljava/io/InputStream;->close()V
:try_end_3e
.catch Ljava/io/IOException; {:try_start_3b .. :try_end_3e} :catch_3f
.line 975
goto :goto_43
.line 973
:catch_3f
move-exception v3
.line 974
.restart local v3 # "e":Ljava/io/IOException;
invoke-virtual {v3}, Ljava/io/IOException;->printStackTrace()V
.line 977
.end local v3 # "e":Ljava/io/IOException;
:goto_43
if-eqz v1, :cond_4e
.line 978
:try_start_45
invoke-virtual {v1}, Ljava/io/ByteArrayOutputStream;->close()V
:try_end_48
.catch Ljava/io/IOException; {:try_start_45 .. :try_end_48} :catch_49
goto :goto_4e
.line 980
:catch_49
move-exception v3
.line 981
.restart local v3 # "e":Ljava/io/IOException;
invoke-virtual {v3}, Ljava/io/IOException;->printStackTrace()V
goto :goto_4f
.line 982
.end local v3 # "e":Ljava/io/IOException;
:cond_4e
:goto_4e
nop
.line 969
:goto_4f
return-object v0
.line 972
.end local v2 # "e":Ljava/io/IOException;
:goto_50
:try_start_50
invoke-virtual {p0}, Ljava/io/InputStream;->close()V
:try_end_53
.catch Ljava/io/IOException; {:try_start_50 .. :try_end_53} :catch_54
.line 975
goto :goto_58
.line 973
:catch_54
move-exception v2
.line 974
.restart local v2 # "e":Ljava/io/IOException;
invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
.line 977
.end local v2 # "e":Ljava/io/IOException;
:goto_58
if-eqz v1, :cond_63
.line 978
:try_start_5a
invoke-virtual {v1}, Ljava/io/ByteArrayOutputStream;->close()V
:try_end_5d
.catch Ljava/io/IOException; {:try_start_5a .. :try_end_5d} :catch_5e
goto :goto_63
.line 980
:catch_5e
move-exception v2
.line 981
.restart local v2 # "e":Ljava/io/IOException;
invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
goto :goto_64
.line 982
.end local v2 # "e":Ljava/io/IOException;
:cond_63
:goto_63
nop
.line 983
:goto_64
goto :goto_66
:goto_65
throw v0
:goto_66
goto :goto_65
.end method
.method private static isFileExists(Ljava/io/File;)Z
.registers 2
.param p0, "file" # Ljava/io/File;
.line 943
if-eqz p0, :cond_a
invoke-virtual {p0}, Ljava/io/File;->exists()Z
move-result v0
if-eqz v0, :cond_a
const/4 v0, 0x1
goto :goto_b
:cond_a
const/4 v0, 0x0
:goto_b
return v0
.end method
.method private static isSpace(Ljava/lang/String;)Z
.registers 5
.param p0, "s" # Ljava/lang/String;
.line 947
const/4 v0, 0x1
if-nez p0, :cond_4
return v0
.line 948
:cond_4
const/4 v1, 0x0
.local v1, "i":I
invoke-virtual {p0}, Ljava/lang/String;->length()I
move-result v2
.local v2, "len":I
:goto_9
if-ge v1, v2, :cond_1a
.line 949
invoke-virtual {p0, v1}, Ljava/lang/String;->charAt(I)C
move-result v3
invoke-static {v3}, Ljava/lang/Character;->isWhitespace(C)Z
move-result v3
if-nez v3, :cond_17
.line 950
const/4 v0, 0x0
return v0
.line 948
:cond_17
add-int/lit8 v1, v1, 0x1
goto :goto_9
.line 953
.end local v1 # "i":I
.end local v2 # "len":I
:cond_1a
return v0
.end method
.method public static readFile2BytesByChannel(Ljava/io/File;)[B
.registers 5
.param p0, "file" # Ljava/io/File;
.line 841
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->isFileExists(Ljava/io/File;)Z
move-result v0
const/4 v1, 0x0
if-nez v0, :cond_8
return-object v1
.line 842
:cond_8
const/4 v0, 0x0
.line 844
.local v0, "fc":Ljava/nio/channels/FileChannel;
:try_start_9
new-instance v2, Ljava/io/RandomAccessFile;
const-string v3, "r"
invoke-direct {v2, p0, v3}, Ljava/io/RandomAccessFile;-><init>(Ljava/io/File;Ljava/lang/String;)V
invoke-virtual {v2}, Ljava/io/RandomAccessFile;->getChannel()Ljava/nio/channels/FileChannel;
move-result-object v2
move-object v0, v2
.line 845
invoke-virtual {v0}, Ljava/nio/channels/FileChannel;->size()J
move-result-wide v2
long-to-int v3, v2
invoke-static {v3}, Ljava/nio/ByteBuffer;->allocate(I)Ljava/nio/ByteBuffer;
move-result-object v2
.line 847
.local v2, "byteBuffer":Ljava/nio/ByteBuffer;
:cond_1e
invoke-virtual {v0, v2}, Ljava/nio/channels/FileChannel;->read(Ljava/nio/ByteBuffer;)I
move-result v3
if-gtz v3, :cond_1e
.line 849
invoke-virtual {v2}, Ljava/nio/ByteBuffer;->array()[B
move-result-object v1
:try_end_28
.catch Ljava/io/IOException; {:try_start_9 .. :try_end_28} :catch_37
.catchall {:try_start_9 .. :try_end_28} :catchall_35
.line 855
if-eqz v0, :cond_33
.line 856
:try_start_2a
invoke-virtual {v0}, Ljava/nio/channels/FileChannel;->close()V
:try_end_2d
.catch Ljava/io/IOException; {:try_start_2a .. :try_end_2d} :catch_2e
goto :goto_33
.line 858
:catch_2e
move-exception v3
.line 859
.local v3, "e":Ljava/io/IOException;
invoke-virtual {v3}, Ljava/io/IOException;->printStackTrace()V
goto :goto_34
.line 860
.end local v3 # "e":Ljava/io/IOException;
:cond_33
:goto_33
nop
.line 849
:goto_34
return-object v1
.line 854
.end local v2 # "byteBuffer":Ljava/nio/ByteBuffer;
:catchall_35
move-exception v1
goto :goto_49
.line 850
:catch_37
move-exception v2
.line 851
.local v2, "e":Ljava/io/IOException;
:try_start_38
invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
:try_end_3b
.catchall {:try_start_38 .. :try_end_3b} :catchall_35
.line 852
nop
.line 855
if-eqz v0, :cond_47
.line 856
:try_start_3e
invoke-virtual {v0}, Ljava/nio/channels/FileChannel;->close()V
:try_end_41
.catch Ljava/io/IOException; {:try_start_3e .. :try_end_41} :catch_42
goto :goto_47
.line 858
:catch_42
move-exception v3
.line 859
.restart local v3 # "e":Ljava/io/IOException;
invoke-virtual {v3}, Ljava/io/IOException;->printStackTrace()V
goto :goto_48
.line 860
.end local v3 # "e":Ljava/io/IOException;
:cond_47
:goto_47
nop
.line 852
:goto_48
return-object v1
.line 855
.end local v2 # "e":Ljava/io/IOException;
:goto_49
if-eqz v0, :cond_54
.line 856
:try_start_4b
invoke-virtual {v0}, Ljava/nio/channels/FileChannel;->close()V
:try_end_4e
.catch Ljava/io/IOException; {:try_start_4b .. :try_end_4e} :catch_4f
goto :goto_54
.line 858
:catch_4f
move-exception v2
.line 859
.restart local v2 # "e":Ljava/io/IOException;
invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
goto :goto_55
.line 860
.end local v2 # "e":Ljava/io/IOException;
:cond_54
:goto_54
nop
.line 861
:goto_55
goto :goto_57
:goto_56
throw v1
:goto_57
goto :goto_56
.end method
.method public static readFile2BytesByChannel(Ljava/lang/String;)[B
.registers 2
.param p0, "filePath" # Ljava/lang/String;
.line 831
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->getFileByPath(Ljava/lang/String;)Ljava/io/File;
move-result-object v0
invoke-static {v0}, Lcom/blankj/utilcode/util/FileIOUtils;->readFile2BytesByChannel(Ljava/io/File;)[B
move-result-object v0
return-object v0
.end method
.method public static readFile2BytesByMap(Ljava/io/File;)[B
.registers 11
.param p0, "file" # Ljava/io/File;
.line 881
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->isFileExists(Ljava/io/File;)Z
move-result v0
const/4 v1, 0x0
if-nez v0, :cond_8
return-object v1
.line 882
:cond_8
const/4 v0, 0x0
.line 884
.local v0, "fc":Ljava/nio/channels/FileChannel;
:try_start_9
new-instance v2, Ljava/io/RandomAccessFile;
const-string v3, "r"
invoke-direct {v2, p0, v3}, Ljava/io/RandomAccessFile;-><init>(Ljava/io/File;Ljava/lang/String;)V
invoke-virtual {v2}, Ljava/io/RandomAccessFile;->getChannel()Ljava/nio/channels/FileChannel;
move-result-object v2
move-object v0, v2
.line 885
invoke-virtual {v0}, Ljava/nio/channels/FileChannel;->size()J
move-result-wide v2
long-to-int v9, v2
.line 886
.local v9, "size":I
sget-object v4, Ljava/nio/channels/FileChannel$MapMode;->READ_ONLY:Ljava/nio/channels/FileChannel$MapMode;
const-wide/16 v5, 0x0
int-to-long v7, v9
move-object v3, v0
invoke-virtual/range {v3 .. v8}, Ljava/nio/channels/FileChannel;->map(Ljava/nio/channels/FileChannel$MapMode;JJ)Ljava/nio/MappedByteBuffer;
move-result-object v2
invoke-virtual {v2}, Ljava/nio/MappedByteBuffer;->load()Ljava/nio/MappedByteBuffer;
move-result-object v2
.line 887
.local v2, "mbb":Ljava/nio/MappedByteBuffer;
new-array v3, v9, [B
.line 888
.local v3, "result":[B
const/4 v4, 0x0
invoke-virtual {v2, v3, v4, v9}, Ljava/nio/MappedByteBuffer;->get([BII)Ljava/nio/ByteBuffer;
:try_end_2e
.catch Ljava/io/IOException; {:try_start_9 .. :try_end_2e} :catch_3e
.catchall {:try_start_9 .. :try_end_2e} :catchall_3c
.line 889
nop
.line 895
if-eqz v0, :cond_3a
.line 896
:try_start_31
invoke-virtual {v0}, Ljava/nio/channels/FileChannel;->close()V
:try_end_34
.catch Ljava/io/IOException; {:try_start_31 .. :try_end_34} :catch_35
goto :goto_3a
.line 898
:catch_35
move-exception v1
.line 899
.local v1, "e":Ljava/io/IOException;
invoke-virtual {v1}, Ljava/io/IOException;->printStackTrace()V
goto :goto_3b
.line 900
.end local v1 # "e":Ljava/io/IOException;
:cond_3a
:goto_3a
nop
.line 889
:goto_3b
return-object v3
.line 894
.end local v2 # "mbb":Ljava/nio/MappedByteBuffer;
.end local v3 # "result":[B
.end local v9 # "size":I
:catchall_3c
move-exception v1
goto :goto_50
.line 890
:catch_3e
move-exception v2
.line 891
.local v2, "e":Ljava/io/IOException;
:try_start_3f
invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
:try_end_42
.catchall {:try_start_3f .. :try_end_42} :catchall_3c
.line 892
nop
.line 895
if-eqz v0, :cond_4e
.line 896
:try_start_45
invoke-virtual {v0}, Ljava/nio/channels/FileChannel;->close()V
:try_end_48
.catch Ljava/io/IOException; {:try_start_45 .. :try_end_48} :catch_49
goto :goto_4e
.line 898
:catch_49
move-exception v3
.line 899
.local v3, "e":Ljava/io/IOException;
invoke-virtual {v3}, Ljava/io/IOException;->printStackTrace()V
goto :goto_4f
.line 900
.end local v3 # "e":Ljava/io/IOException;
:cond_4e
:goto_4e
nop
.line 892
:goto_4f
return-object v1
.line 895
.end local v2 # "e":Ljava/io/IOException;
:goto_50
if-eqz v0, :cond_5b
.line 896
:try_start_52
invoke-virtual {v0}, Ljava/nio/channels/FileChannel;->close()V
:try_end_55
.catch Ljava/io/IOException; {:try_start_52 .. :try_end_55} :catch_56
goto :goto_5b
.line 898
:catch_56
move-exception v2
.line 899
.restart local v2 # "e":Ljava/io/IOException;
invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
goto :goto_5c
.line 900
.end local v2 # "e":Ljava/io/IOException;
:cond_5b
:goto_5b
nop
.line 901
:goto_5c
throw v1
.end method
.method public static readFile2BytesByMap(Ljava/lang/String;)[B
.registers 2
.param p0, "filePath" # Ljava/lang/String;
.line 871
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->getFileByPath(Ljava/lang/String;)Ljava/io/File;
move-result-object v0
invoke-static {v0}, Lcom/blankj/utilcode/util/FileIOUtils;->readFile2BytesByMap(Ljava/io/File;)[B
move-result-object v0
return-object v0
.end method
.method public static readFile2BytesByStream(Ljava/io/File;)[B
.registers 2
.param p0, "file" # Ljava/io/File;
.line 750
const/4 v0, 0x0
invoke-static {p0, v0}, Lcom/blankj/utilcode/util/FileIOUtils;->readFile2BytesByStream(Ljava/io/File;Lcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;)[B
move-result-object v0
return-object v0
.end method
.method public static readFile2BytesByStream(Ljava/io/File;Lcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;)[B
.registers 15
.param p0, "file" # Ljava/io/File;
.param p1, "listener" # Lcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;
.line 778
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->isFileExists(Ljava/io/File;)Z
move-result v0
const/4 v1, 0x0
if-nez v0, :cond_8
return-object v1
.line 780
:cond_8
const/4 v0, 0x0
.line 781
.local v0, "os":Ljava/io/ByteArrayOutputStream;
:try_start_9
new-instance v2, Ljava/io/BufferedInputStream;
new-instance v3, Ljava/io/FileInputStream;
invoke-direct {v3, p0}, Ljava/io/FileInputStream;-><init>(Ljava/io/File;)V
sget v4, Lcom/blankj/utilcode/util/FileIOUtils;->sBufferSize:I
invoke-direct {v2, v3, v4}, Ljava/io/BufferedInputStream;-><init>(Ljava/io/InputStream;I)V
:try_end_15
.catch Ljava/io/FileNotFoundException; {:try_start_9 .. :try_end_15} :catch_9d
.line 783
.local v2, "is":Ljava/io/InputStream;
:try_start_15
new-instance v3, Ljava/io/ByteArrayOutputStream;
invoke-direct {v3}, Ljava/io/ByteArrayOutputStream;-><init>()V
move-object v0, v3
.line 784
sget v3, Lcom/blankj/utilcode/util/FileIOUtils;->sBufferSize:I
new-array v3, v3, [B
.line 786
.local v3, "b":[B
const/4 v4, -0x1
const/4 v5, 0x0
if-nez p1, :cond_30
.line 787
:goto_23
sget v6, Lcom/blankj/utilcode/util/FileIOUtils;->sBufferSize:I
invoke-virtual {v2, v3, v5, v6}, Ljava/io/InputStream;->read([BII)I
move-result v6
move v7, v6
.local v7, "len":I
if-eq v6, v4, :cond_55
.line 788
invoke-virtual {v0, v3, v5, v7}, Ljava/io/ByteArrayOutputStream;->write([BII)V
goto :goto_23
.line 791
.end local v7 # "len":I
:cond_30
invoke-virtual {v2}, Ljava/io/InputStream;->available()I
move-result v6
int-to-double v6, v6
.line 792
.local v6, "totalSize":D
const/4 v8, 0x0
.line 793
.local v8, "curSize":I
const-wide/16 v9, 0x0
invoke-interface {p1, v9, v10}, Lcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;->onProgressUpdate(D)V
.line 794
:goto_3b
sget v9, Lcom/blankj/utilcode/util/FileIOUtils;->sBufferSize:I
invoke-virtual {v2, v3, v5, v9}, Ljava/io/InputStream;->read([BII)I
move-result v9
move v10, v9
.local v10, "len":I
if-eq v9, v4, :cond_54
.line 795
invoke-virtual {v0, v3, v5, v10}, Ljava/io/ByteArrayOutputStream;->write([BII)V
:try_end_47
.catch Ljava/io/IOException; {:try_start_15 .. :try_end_47} :catch_6d
.catchall {:try_start_15 .. :try_end_47} :catchall_6b
.line 796
add-int/2addr v8, v10
.line 797
int-to-double v11, v8
invoke-static {v11, v12}, Ljava/lang/Double;->isNaN(D)Z
invoke-static {v6, v7}, Ljava/lang/Double;->isNaN(D)Z
div-double/2addr v11, v6
:try_start_50
invoke-interface {p1, v11, v12}, Lcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;->onProgressUpdate(D)V
goto :goto_3b
.line 794
:cond_54
move v7, v10
.line 800
.end local v6 # "totalSize":D
.end local v8 # "curSize":I
.end local v10 # "len":I
.restart local v7 # "len":I
:cond_55
invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;->toByteArray()[B
move-result-object v4
:try_end_59
.catch Ljava/io/IOException; {:try_start_50 .. :try_end_59} :catch_6d
.catchall {:try_start_50 .. :try_end_59} :catchall_6b
.line 806
:try_start_59
invoke-virtual {v2}, Ljava/io/InputStream;->close()V
:try_end_5c
.catch Ljava/io/IOException; {:try_start_59 .. :try_end_5c} :catch_5d
.catch Ljava/io/FileNotFoundException; {:try_start_59 .. :try_end_5c} :catch_9d
.line 809
goto :goto_61
.line 807
:catch_5d
move-exception v5
.line 808
.local v5, "e":Ljava/io/IOException;
:try_start_5e
invoke-virtual {v5}, Ljava/io/IOException;->printStackTrace()V
:try_end_61
.catch Ljava/io/FileNotFoundException; {:try_start_5e .. :try_end_61} :catch_9d
.line 811
.end local v5 # "e":Ljava/io/IOException;
:goto_61
nop
.line 812
:try_start_62
invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;->close()V
:try_end_65
.catch Ljava/io/IOException; {:try_start_62 .. :try_end_65} :catch_66
.catch Ljava/io/FileNotFoundException; {:try_start_62 .. :try_end_65} :catch_9d
.line 816
goto :goto_6a
.line 814
:catch_66
move-exception v5
.line 815
.restart local v5 # "e":Ljava/io/IOException;
:try_start_67
invoke-virtual {v5}, Ljava/io/IOException;->printStackTrace()V
:try_end_6a
.catch Ljava/io/FileNotFoundException; {:try_start_67 .. :try_end_6a} :catch_9d
.line 800
.end local v5 # "e":Ljava/io/IOException;
:goto_6a
return-object v4
.line 805
.end local v3 # "b":[B
.end local v7 # "len":I
:catchall_6b
move-exception v3
goto :goto_87
.line 801
:catch_6d
move-exception v3
.line 802
.local v3, "e":Ljava/io/IOException;
:try_start_6e
invoke-virtual {v3}, Ljava/io/IOException;->printStackTrace()V
:try_end_71
.catchall {:try_start_6e .. :try_end_71} :catchall_6b
.line 803
nop
.line 806
:try_start_72
invoke-virtual {v2}, Ljava/io/InputStream;->close()V
:try_end_75
.catch Ljava/io/IOException; {:try_start_72 .. :try_end_75} :catch_76
.catch Ljava/io/FileNotFoundException; {:try_start_72 .. :try_end_75} :catch_9d
.line 809
goto :goto_7a
.line 807
:catch_76
move-exception v4
.line 808
.local v4, "e":Ljava/io/IOException;
:try_start_77
invoke-virtual {v4}, Ljava/io/IOException;->printStackTrace()V
:try_end_7a
.catch Ljava/io/FileNotFoundException; {:try_start_77 .. :try_end_7a} :catch_9d
.line 811
.end local v4 # "e":Ljava/io/IOException;
:goto_7a
if-eqz v0, :cond_85
.line 812
:try_start_7c
invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;->close()V
:try_end_7f
.catch Ljava/io/IOException; {:try_start_7c .. :try_end_7f} :catch_80
.catch Ljava/io/FileNotFoundException; {:try_start_7c .. :try_end_7f} :catch_9d
goto :goto_85
.line 814
:catch_80
move-exception v4
.line 815
.restart local v4 # "e":Ljava/io/IOException;
:try_start_81
invoke-virtual {v4}, Ljava/io/IOException;->printStackTrace()V
:try_end_84
.catch Ljava/io/FileNotFoundException; {:try_start_81 .. :try_end_84} :catch_9d
goto :goto_86
.line 816
.end local v4 # "e":Ljava/io/IOException;
:cond_85
:goto_85
nop
.line 803
:goto_86
return-object v1
.line 806
.end local v3 # "e":Ljava/io/IOException;
:goto_87
:try_start_87
invoke-virtual {v2}, Ljava/io/InputStream;->close()V
:try_end_8a
.catch Ljava/io/IOException; {:try_start_87 .. :try_end_8a} :catch_8b
.catch Ljava/io/FileNotFoundException; {:try_start_87 .. :try_end_8a} :catch_9d
.line 809
goto :goto_8f
.line 807
:catch_8b
move-exception v4
.line 808
.restart local v4 # "e":Ljava/io/IOException;
:try_start_8c
invoke-virtual {v4}, Ljava/io/IOException;->printStackTrace()V
:try_end_8f
.catch Ljava/io/FileNotFoundException; {:try_start_8c .. :try_end_8f} :catch_9d
.line 811
.end local v4 # "e":Ljava/io/IOException;
:goto_8f
if-eqz v0, :cond_9a
.line 812
:try_start_91
invoke-virtual {v0}, Ljava/io/ByteArrayOutputStream;->close()V
:try_end_94
.catch Ljava/io/IOException; {:try_start_91 .. :try_end_94} :catch_95
.catch Ljava/io/FileNotFoundException; {:try_start_91 .. :try_end_94} :catch_9d
goto :goto_9a
.line 814
:catch_95
move-exception v4
.line 815
.restart local v4 # "e":Ljava/io/IOException;
:try_start_96
invoke-virtual {v4}, Ljava/io/IOException;->printStackTrace()V
goto :goto_9b
.line 816
.end local v4 # "e":Ljava/io/IOException;
:cond_9a
:goto_9a
nop
.line 817
:goto_9b
nop
.end local p0 # "file":Ljava/io/File;
.end local p1 # "listener":Lcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;
throw v3
:try_end_9d
.catch Ljava/io/FileNotFoundException; {:try_start_96 .. :try_end_9d} :catch_9d
.line 818
.end local v0 # "os":Ljava/io/ByteArrayOutputStream;
.end local v2 # "is":Ljava/io/InputStream;
.restart local p0 # "file":Ljava/io/File;
.restart local p1 # "listener":Lcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;
:catch_9d
move-exception v0
.line 819
.local v0, "e":Ljava/io/FileNotFoundException;
invoke-virtual {v0}, Ljava/io/FileNotFoundException;->printStackTrace()V
.line 820
return-object v1
.end method
.method public static readFile2BytesByStream(Ljava/lang/String;)[B
.registers 3
.param p0, "filePath" # Ljava/lang/String;
.line 740
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->getFileByPath(Ljava/lang/String;)Ljava/io/File;
move-result-object v0
const/4 v1, 0x0
invoke-static {v0, v1}, Lcom/blankj/utilcode/util/FileIOUtils;->readFile2BytesByStream(Ljava/io/File;Lcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;)[B
move-result-object v0
return-object v0
.end method
.method public static readFile2BytesByStream(Ljava/lang/String;Lcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;)[B
.registers 3
.param p0, "filePath" # Ljava/lang/String;
.param p1, "listener" # Lcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;
.line 766
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->getFileByPath(Ljava/lang/String;)Ljava/io/File;
move-result-object v0
invoke-static {v0}, Lcom/blankj/utilcode/util/FileIOUtils;->readFile2BytesByStream(Ljava/io/File;)[B
move-result-object v0
return-object v0
.end method
.method public static readFile2List(Ljava/io/File;)Ljava/util/List;
.registers 4
.param p0, "file" # Ljava/io/File;
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/io/File;",
")",
"Ljava/util/List<",
"Ljava/lang/String;",
">;"
}
.end annotation
.line 575
const/4 v0, 0x0
const v1, 0x7fffffff
const/4 v2, 0x0
invoke-static {p0, v0, v1, v2}, Lcom/blankj/utilcode/util/FileIOUtils;->readFile2List(Ljava/io/File;IILjava/lang/String;)Ljava/util/List;
move-result-object v0
return-object v0
.end method
.method public static readFile2List(Ljava/io/File;II)Ljava/util/List;
.registers 4
.param p0, "file" # Ljava/io/File;
.param p1, "st" # I
.param p2, "end" # I
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/io/File;",
"II)",
"Ljava/util/List<",
"Ljava/lang/String;",
">;"
}
.end annotation
.line 626
const/4 v0, 0x0
invoke-static {p0, p1, p2, v0}, Lcom/blankj/utilcode/util/FileIOUtils;->readFile2List(Ljava/io/File;IILjava/lang/String;)Ljava/util/List;
move-result-object v0
return-object v0
.end method
.method public static readFile2List(Ljava/io/File;IILjava/lang/String;)Ljava/util/List;
.registers 11
.param p0, "file" # Ljava/io/File;
.param p1, "st" # I
.param p2, "end" # I
.param p3, "charsetName" # Ljava/lang/String;
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/io/File;",
"II",
"Ljava/lang/String;",
")",
"Ljava/util/List<",
"Ljava/lang/String;",
">;"
}
.end annotation
.line 642
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->isFileExists(Ljava/io/File;)Z
move-result v0
const/4 v1, 0x0
if-nez v0, :cond_8
return-object v1
.line 643
:cond_8
if-le p1, p2, :cond_b
return-object v1
.line 644
:cond_b
const/4 v0, 0x0
.line 647
.local v0, "reader":Ljava/io/BufferedReader;
const/4 v2, 0x1
.line 648
.local v2, "curLine":I
:try_start_d
new-instance v3, Ljava/util/ArrayList;
invoke-direct {v3}, Ljava/util/ArrayList;-><init>()V
.line 649
.local v3, "list":Ljava/util/List;, "Ljava/util/List<Ljava/lang/String;>;"
invoke-static {p3}, Lcom/blankj/utilcode/util/FileIOUtils;->isSpace(Ljava/lang/String;)Z
move-result v4
if-eqz v4, :cond_29
.line 650
new-instance v4, Ljava/io/BufferedReader;
new-instance v5, Ljava/io/InputStreamReader;
new-instance v6, Ljava/io/FileInputStream;
invoke-direct {v6, p0}, Ljava/io/FileInputStream;-><init>(Ljava/io/File;)V
invoke-direct {v5, v6}, Ljava/io/InputStreamReader;-><init>(Ljava/io/InputStream;)V
invoke-direct {v4, v5}, Ljava/io/BufferedReader;-><init>(Ljava/io/Reader;)V
move-object v0, v4
goto :goto_39
.line 652
:cond_29
new-instance v4, Ljava/io/BufferedReader;
new-instance v5, Ljava/io/InputStreamReader;
new-instance v6, Ljava/io/FileInputStream;
invoke-direct {v6, p0}, Ljava/io/FileInputStream;-><init>(Ljava/io/File;)V
invoke-direct {v5, v6, p3}, Ljava/io/InputStreamReader;-><init>(Ljava/io/InputStream;Ljava/lang/String;)V
invoke-direct {v4, v5}, Ljava/io/BufferedReader;-><init>(Ljava/io/Reader;)V
move-object v0, v4
.line 656
:goto_39
invoke-virtual {v0}, Ljava/io/BufferedReader;->readLine()Ljava/lang/String;
move-result-object v4
move-object v5, v4
.local v5, "line":Ljava/lang/String;
if-eqz v4, :cond_4d
.line 657
if-le v2, p2, :cond_43
goto :goto_4d
.line 658
:cond_43
if-gt p1, v2, :cond_4a
if-gt v2, p2, :cond_4a
invoke-interface {v3, v5}, Ljava/util/List;->add(Ljava/lang/Object;)Z
:try_end_4a
.catch Ljava/io/IOException; {:try_start_d .. :try_end_4a} :catch_5a
.catchall {:try_start_d .. :try_end_4a} :catchall_58
.line 659
:cond_4a
add-int/lit8 v2, v2, 0x1
goto :goto_39
.line 661
:cond_4d
:goto_4d
nop
.line 667
nop
.line 668
:try_start_4f
invoke-virtual {v0}, Ljava/io/BufferedReader;->close()V
:try_end_52
.catch Ljava/io/IOException; {:try_start_4f .. :try_end_52} :catch_53
.line 672
goto :goto_57
.line 670
:catch_53
move-exception v1
.line 671
.local v1, "e":Ljava/io/IOException;
invoke-virtual {v1}, Ljava/io/IOException;->printStackTrace()V
.line 661
.end local v1 # "e":Ljava/io/IOException;
:goto_57
return-object v3
.line 666
.end local v2 # "curLine":I
.end local v3 # "list":Ljava/util/List;, "Ljava/util/List<Ljava/lang/String;>;"
.end local v5 # "line":Ljava/lang/String;
:catchall_58
move-exception v1
goto :goto_6c
.line 662
:catch_5a
move-exception v2
.line 663
.local v2, "e":Ljava/io/IOException;
:try_start_5b
invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
:try_end_5e
.catchall {:try_start_5b .. :try_end_5e} :catchall_58
.line 664
nop
.line 667
if-eqz v0, :cond_6a
.line 668
:try_start_61
invoke-virtual {v0}, Ljava/io/BufferedReader;->close()V
:try_end_64
.catch Ljava/io/IOException; {:try_start_61 .. :try_end_64} :catch_65
goto :goto_6a
.line 670
:catch_65
move-exception v3
.line 671
.local v3, "e":Ljava/io/IOException;
invoke-virtual {v3}, Ljava/io/IOException;->printStackTrace()V
goto :goto_6b
.line 672
.end local v3 # "e":Ljava/io/IOException;
:cond_6a
:goto_6a
nop
.line 664
:goto_6b
return-object v1
.line 667
.end local v2 # "e":Ljava/io/IOException;
:goto_6c
if-eqz v0, :cond_77
.line 668
:try_start_6e
invoke-virtual {v0}, Ljava/io/BufferedReader;->close()V
:try_end_71
.catch Ljava/io/IOException; {:try_start_6e .. :try_end_71} :catch_72
goto :goto_77
.line 670
:catch_72
move-exception v2
.line 671
.restart local v2 # "e":Ljava/io/IOException;
invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
goto :goto_78
.line 672
.end local v2 # "e":Ljava/io/IOException;
:cond_77
:goto_77
nop
.line 673
:goto_78
goto :goto_7a
:goto_79
throw v1
:goto_7a
goto :goto_79
.end method
.method public static readFile2List(Ljava/io/File;Ljava/lang/String;)Ljava/util/List;
.registers 4
.param p0, "file" # Ljava/io/File;
.param p1, "charsetName" # Ljava/lang/String;
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/io/File;",
"Ljava/lang/String;",
")",
"Ljava/util/List<",
"Ljava/lang/String;",
">;"
}
.end annotation
.line 586
const/4 v0, 0x0
const v1, 0x7fffffff
invoke-static {p0, v0, v1, p1}, Lcom/blankj/utilcode/util/FileIOUtils;->readFile2List(Ljava/io/File;IILjava/lang/String;)Ljava/util/List;
move-result-object v0
return-object v0
.end method
.method public static readFile2List(Ljava/lang/String;)Ljava/util/List;
.registers 3
.param p0, "filePath" # Ljava/lang/String;
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
")",
"Ljava/util/List<",
"Ljava/lang/String;",
">;"
}
.end annotation
.line 554
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->getFileByPath(Ljava/lang/String;)Ljava/io/File;
move-result-object v0
const/4 v1, 0x0
invoke-static {v0, v1}, Lcom/blankj/utilcode/util/FileIOUtils;->readFile2List(Ljava/io/File;Ljava/lang/String;)Ljava/util/List;
move-result-object v0
return-object v0
.end method
.method public static readFile2List(Ljava/lang/String;II)Ljava/util/List;
.registers 5
.param p0, "filePath" # Ljava/lang/String;
.param p1, "st" # I
.param p2, "end" # I
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
"II)",
"Ljava/util/List<",
"Ljava/lang/String;",
">;"
}
.end annotation
.line 598
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->getFileByPath(Ljava/lang/String;)Ljava/io/File;
move-result-object v0
const/4 v1, 0x0
invoke-static {v0, p1, p2, v1}, Lcom/blankj/utilcode/util/FileIOUtils;->readFile2List(Ljava/io/File;IILjava/lang/String;)Ljava/util/List;
move-result-object v0
return-object v0
.end method
.method public static readFile2List(Ljava/lang/String;IILjava/lang/String;)Ljava/util/List;
.registers 5
.param p0, "filePath" # Ljava/lang/String;
.param p1, "st" # I
.param p2, "end" # I
.param p3, "charsetName" # Ljava/lang/String;
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
"II",
"Ljava/lang/String;",
")",
"Ljava/util/List<",
"Ljava/lang/String;",
">;"
}
.end annotation
.line 614
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->getFileByPath(Ljava/lang/String;)Ljava/io/File;
move-result-object v0
invoke-static {v0, p1, p2, p3}, Lcom/blankj/utilcode/util/FileIOUtils;->readFile2List(Ljava/io/File;IILjava/lang/String;)Ljava/util/List;
move-result-object v0
return-object v0
.end method
.method public static readFile2List(Ljava/lang/String;Ljava/lang/String;)Ljava/util/List;
.registers 3
.param p0, "filePath" # Ljava/lang/String;
.param p1, "charsetName" # Ljava/lang/String;
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
"Ljava/lang/String;",
")",
"Ljava/util/List<",
"Ljava/lang/String;",
">;"
}
.end annotation
.line 565
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->getFileByPath(Ljava/lang/String;)Ljava/io/File;
move-result-object v0
invoke-static {v0, p1}, Lcom/blankj/utilcode/util/FileIOUtils;->readFile2List(Ljava/io/File;Ljava/lang/String;)Ljava/util/List;
move-result-object v0
return-object v0
.end method
.method public static readFile2String(Ljava/io/File;)Ljava/lang/String;
.registers 2
.param p0, "file" # Ljava/io/File;
.line 704
const/4 v0, 0x0
invoke-static {p0, v0}, Lcom/blankj/utilcode/util/FileIOUtils;->readFile2String(Ljava/io/File;Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public static readFile2String(Ljava/io/File;Ljava/lang/String;)Ljava/lang/String;
.registers 5
.param p0, "file" # Ljava/io/File;
.param p1, "charsetName" # Ljava/lang/String;
.line 715
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->readFile2BytesByStream(Ljava/io/File;)[B
move-result-object v0
.line 716
.local v0, "bytes":[B
if-nez v0, :cond_8
const/4 v1, 0x0
return-object v1
.line 717
:cond_8
invoke-static {p1}, Lcom/blankj/utilcode/util/FileIOUtils;->isSpace(Ljava/lang/String;)Z
move-result v1
if-eqz v1, :cond_14
.line 718
new-instance v1, Ljava/lang/String;
invoke-direct {v1, v0}, Ljava/lang/String;-><init>([B)V
return-object v1
.line 721
:cond_14
:try_start_14
new-instance v1, Ljava/lang/String;
invoke-direct {v1, v0, p1}, Ljava/lang/String;-><init>([BLjava/lang/String;)V
:try_end_19
.catch Ljava/io/UnsupportedEncodingException; {:try_start_14 .. :try_end_19} :catch_1a
return-object v1
.line 722
:catch_1a
move-exception v1
.line 723
.local v1, "e":Ljava/io/UnsupportedEncodingException;
invoke-virtual {v1}, Ljava/io/UnsupportedEncodingException;->printStackTrace()V
.line 724
const-string v2, ""
return-object v2
.end method
.method public static readFile2String(Ljava/lang/String;)Ljava/lang/String;
.registers 3
.param p0, "filePath" # Ljava/lang/String;
.line 683
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->getFileByPath(Ljava/lang/String;)Ljava/io/File;
move-result-object v0
const/4 v1, 0x0
invoke-static {v0, v1}, Lcom/blankj/utilcode/util/FileIOUtils;->readFile2String(Ljava/io/File;Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public static readFile2String(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
.registers 3
.param p0, "filePath" # Ljava/lang/String;
.param p1, "charsetName" # Ljava/lang/String;
.line 694
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->getFileByPath(Ljava/lang/String;)Ljava/io/File;
move-result-object v0
invoke-static {v0, p1}, Lcom/blankj/utilcode/util/FileIOUtils;->readFile2String(Ljava/io/File;Ljava/lang/String;)Ljava/lang/String;
move-result-object v0
return-object v0
.end method
.method public static setBufferSize(I)V
.registers 1
.param p0, "bufferSize" # I
.line 911
sput p0, Lcom/blankj/utilcode/util/FileIOUtils;->sBufferSize:I
.line 912
return-void
.end method
.method public static writeFileFromBytesByChannel(Ljava/io/File;[BZ)Z
.registers 4
.param p0, "file" # Ljava/io/File;
.param p1, "bytes" # [B
.param p2, "isForce" # Z
.line 358
const/4 v0, 0x0
invoke-static {p0, p1, v0, p2}, Lcom/blankj/utilcode/util/FileIOUtils;->writeFileFromBytesByChannel(Ljava/io/File;[BZZ)Z
move-result v0
return v0
.end method
.method public static writeFileFromBytesByChannel(Ljava/io/File;[BZZ)Z
.registers 8
.param p0, "file" # Ljava/io/File;
.param p1, "bytes" # [B
.param p2, "append" # Z
.param p3, "isForce" # Z
.line 374
const/4 v0, 0x0
if-eqz p1, :cond_58
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->createOrExistsFile(Ljava/io/File;)Z
move-result v1
if-nez v1, :cond_a
goto :goto_58
.line 375
:cond_a
const/4 v1, 0x0
.line 377
.local v1, "fc":Ljava/nio/channels/FileChannel;
:try_start_b
new-instance v2, Ljava/io/FileOutputStream;
invoke-direct {v2, p0, p2}, Ljava/io/FileOutputStream;-><init>(Ljava/io/File;Z)V
invoke-virtual {v2}, Ljava/io/FileOutputStream;->getChannel()Ljava/nio/channels/FileChannel;
move-result-object v2
move-object v1, v2
.line 378
invoke-virtual {v1}, Ljava/nio/channels/FileChannel;->size()J
move-result-wide v2
invoke-virtual {v1, v2, v3}, Ljava/nio/channels/FileChannel;->position(J)Ljava/nio/channels/FileChannel;
.line 379
invoke-static {p1}, Ljava/nio/ByteBuffer;->wrap([B)Ljava/nio/ByteBuffer;
move-result-object v2
invoke-virtual {v1, v2}, Ljava/nio/channels/FileChannel;->write(Ljava/nio/ByteBuffer;)I
.line 380
const/4 v2, 0x1
if-eqz p3, :cond_29
invoke-virtual {v1, v2}, Ljava/nio/channels/FileChannel;->force(Z)V
:try_end_29
.catch Ljava/io/IOException; {:try_start_b .. :try_end_29} :catch_39
.catchall {:try_start_b .. :try_end_29} :catchall_37
.line 381
:cond_29
nop
.line 387
if-eqz v1, :cond_35
.line 388
:try_start_2c
invoke-virtual {v1}, Ljava/nio/channels/FileChannel;->close()V
:try_end_2f
.catch Ljava/io/IOException; {:try_start_2c .. :try_end_2f} :catch_30
goto :goto_35
.line 390
:catch_30
move-exception v0
.line 391
.local v0, "e":Ljava/io/IOException;
invoke-virtual {v0}, Ljava/io/IOException;->printStackTrace()V
goto :goto_36
.line 392
.end local v0 # "e":Ljava/io/IOException;
:cond_35
:goto_35
nop
.line 381
:goto_36
return v2
.line 386
:catchall_37
move-exception v0
goto :goto_4b
.line 382
:catch_39
move-exception v2
.line 383
.local v2, "e":Ljava/io/IOException;
:try_start_3a
invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
:try_end_3d
.catchall {:try_start_3a .. :try_end_3d} :catchall_37
.line 384
nop
.line 387
if-eqz v1, :cond_49
.line 388
:try_start_40
invoke-virtual {v1}, Ljava/nio/channels/FileChannel;->close()V
:try_end_43
.catch Ljava/io/IOException; {:try_start_40 .. :try_end_43} :catch_44
goto :goto_49
.line 390
:catch_44
move-exception v3
.line 391
.local v3, "e":Ljava/io/IOException;
invoke-virtual {v3}, Ljava/io/IOException;->printStackTrace()V
goto :goto_4a
.line 392
.end local v3 # "e":Ljava/io/IOException;
:cond_49
:goto_49
nop
.line 384
:goto_4a
return v0
.line 387
.end local v2 # "e":Ljava/io/IOException;
:goto_4b
if-eqz v1, :cond_56
.line 388
:try_start_4d
invoke-virtual {v1}, Ljava/nio/channels/FileChannel;->close()V
:try_end_50
.catch Ljava/io/IOException; {:try_start_4d .. :try_end_50} :catch_51
goto :goto_56
.line 390
:catch_51
move-exception v2
.line 391
.restart local v2 # "e":Ljava/io/IOException;
invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
goto :goto_57
.line 392
.end local v2 # "e":Ljava/io/IOException;
:cond_56
:goto_56
nop
.line 393
:goto_57
throw v0
.line 374
.end local v1 # "fc":Ljava/nio/channels/FileChannel;
:cond_58
:goto_58
return v0
.end method
.method public static writeFileFromBytesByChannel(Ljava/lang/String;[BZ)Z
.registers 5
.param p0, "filePath" # Ljava/lang/String;
.param p1, "bytes" # [B
.param p2, "isForce" # Z
.line 328
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->getFileByPath(Ljava/lang/String;)Ljava/io/File;
move-result-object v0
const/4 v1, 0x0
invoke-static {v0, p1, v1, p2}, Lcom/blankj/utilcode/util/FileIOUtils;->writeFileFromBytesByChannel(Ljava/io/File;[BZZ)Z
move-result v0
return v0
.end method
.method public static writeFileFromBytesByChannel(Ljava/lang/String;[BZZ)Z
.registers 5
.param p0, "filePath" # Ljava/lang/String;
.param p1, "bytes" # [B
.param p2, "append" # Z
.param p3, "isForce" # Z
.line 344
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->getFileByPath(Ljava/lang/String;)Ljava/io/File;
move-result-object v0
invoke-static {v0, p1, p2, p3}, Lcom/blankj/utilcode/util/FileIOUtils;->writeFileFromBytesByChannel(Ljava/io/File;[BZZ)Z
move-result v0
return v0
.end method
.method public static writeFileFromBytesByMap(Ljava/io/File;[BZ)Z
.registers 4
.param p0, "file" # Ljava/io/File;
.param p1, "bytes" # [B
.param p2, "isForce" # Z
.line 437
const/4 v0, 0x0
invoke-static {p0, p1, v0, p2}, Lcom/blankj/utilcode/util/FileIOUtils;->writeFileFromBytesByMap(Ljava/io/File;[BZZ)Z
move-result v0
return v0
.end method
.method public static writeFileFromBytesByMap(Ljava/io/File;[BZZ)Z
.registers 13
.param p0, "file" # Ljava/io/File;
.param p1, "bytes" # [B
.param p2, "append" # Z
.param p3, "isForce" # Z
.line 453
const/4 v0, 0x0
if-eqz p1, :cond_59
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->createOrExistsFile(Ljava/io/File;)Z
move-result v1
if-nez v1, :cond_a
goto :goto_59
.line 454
:cond_a
const/4 v1, 0x0
.line 456
.local v1, "fc":Ljava/nio/channels/FileChannel;
:try_start_b
new-instance v2, Ljava/io/FileOutputStream;
invoke-direct {v2, p0, p2}, Ljava/io/FileOutputStream;-><init>(Ljava/io/File;Z)V
invoke-virtual {v2}, Ljava/io/FileOutputStream;->getChannel()Ljava/nio/channels/FileChannel;
move-result-object v2
move-object v1, v2
.line 457
sget-object v4, Ljava/nio/channels/FileChannel$MapMode;->READ_WRITE:Ljava/nio/channels/FileChannel$MapMode;
invoke-virtual {v1}, Ljava/nio/channels/FileChannel;->size()J
move-result-wide v5
array-length v2, p1
int-to-long v7, v2
move-object v3, v1
invoke-virtual/range {v3 .. v8}, Ljava/nio/channels/FileChannel;->map(Ljava/nio/channels/FileChannel$MapMode;JJ)Ljava/nio/MappedByteBuffer;
move-result-object v2
.line 458
.local v2, "mbb":Ljava/nio/MappedByteBuffer;
invoke-virtual {v2, p1}, Ljava/nio/MappedByteBuffer;->put([B)Ljava/nio/ByteBuffer;
.line 459
if-eqz p3, :cond_2a
invoke-virtual {v2}, Ljava/nio/MappedByteBuffer;->force()Ljava/nio/MappedByteBuffer;
:try_end_2a
.catch Ljava/io/IOException; {:try_start_b .. :try_end_2a} :catch_3a
.catchall {:try_start_b .. :try_end_2a} :catchall_38
.line 460
:cond_2a
const/4 v0, 0x1
.line 466
if-eqz v1, :cond_36
.line 467
:try_start_2d
invoke-virtual {v1}, Ljava/nio/channels/FileChannel;->close()V
:try_end_30
.catch Ljava/io/IOException; {:try_start_2d .. :try_end_30} :catch_31
goto :goto_36
.line 469
:catch_31
move-exception v3
.line 470
.local v3, "e":Ljava/io/IOException;
invoke-virtual {v3}, Ljava/io/IOException;->printStackTrace()V
goto :goto_37
.line 471
.end local v3 # "e":Ljava/io/IOException;
:cond_36
:goto_36
nop
.line 460
:goto_37
return v0
.line 465
.end local v2 # "mbb":Ljava/nio/MappedByteBuffer;
:catchall_38
move-exception v0
goto :goto_4c
.line 461
:catch_3a
move-exception v2
.line 462
.local v2, "e":Ljava/io/IOException;
:try_start_3b
invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
:try_end_3e
.catchall {:try_start_3b .. :try_end_3e} :catchall_38
.line 463
nop
.line 466
if-eqz v1, :cond_4a
.line 467
:try_start_41
invoke-virtual {v1}, Ljava/nio/channels/FileChannel;->close()V
:try_end_44
.catch Ljava/io/IOException; {:try_start_41 .. :try_end_44} :catch_45
goto :goto_4a
.line 469
:catch_45
move-exception v3
.line 470
.restart local v3 # "e":Ljava/io/IOException;
invoke-virtual {v3}, Ljava/io/IOException;->printStackTrace()V
goto :goto_4b
.line 471
.end local v3 # "e":Ljava/io/IOException;
:cond_4a
:goto_4a
nop
.line 463
:goto_4b
return v0
.line 466
.end local v2 # "e":Ljava/io/IOException;
:goto_4c
if-eqz v1, :cond_57
.line 467
:try_start_4e
invoke-virtual {v1}, Ljava/nio/channels/FileChannel;->close()V
:try_end_51
.catch Ljava/io/IOException; {:try_start_4e .. :try_end_51} :catch_52
goto :goto_57
.line 469
:catch_52
move-exception v2
.line 470
.restart local v2 # "e":Ljava/io/IOException;
invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
goto :goto_58
.line 471
.end local v2 # "e":Ljava/io/IOException;
:cond_57
:goto_57
nop
.line 472
:goto_58
throw v0
.line 453
.end local v1 # "fc":Ljava/nio/channels/FileChannel;
:cond_59
:goto_59
return v0
.end method
.method public static writeFileFromBytesByMap(Ljava/lang/String;[BZ)Z
.registers 4
.param p0, "filePath" # Ljava/lang/String;
.param p1, "bytes" # [B
.param p2, "isForce" # Z
.line 407
const/4 v0, 0x0
invoke-static {p0, p1, v0, p2}, Lcom/blankj/utilcode/util/FileIOUtils;->writeFileFromBytesByMap(Ljava/lang/String;[BZZ)Z
move-result v0
return v0
.end method
.method public static writeFileFromBytesByMap(Ljava/lang/String;[BZZ)Z
.registers 5
.param p0, "filePath" # Ljava/lang/String;
.param p1, "bytes" # [B
.param p2, "append" # Z
.param p3, "isForce" # Z
.line 423
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->getFileByPath(Ljava/lang/String;)Ljava/io/File;
move-result-object v0
invoke-static {v0, p1, p2, p3}, Lcom/blankj/utilcode/util/FileIOUtils;->writeFileFromBytesByMap(Ljava/io/File;[BZZ)Z
move-result v0
return v0
.end method
.method public static writeFileFromBytesByStream(Ljava/io/File;[B)Z
.registers 4
.param p0, "file" # Ljava/io/File;
.param p1, "bytes" # [B
.line 235
const/4 v0, 0x0
const/4 v1, 0x0
invoke-static {p0, p1, v0, v1}, Lcom/blankj/utilcode/util/FileIOUtils;->writeFileFromBytesByStream(Ljava/io/File;[BZLcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;)Z
move-result v0
return v0
.end method
.method public static writeFileFromBytesByStream(Ljava/io/File;[BLcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;)Z
.registers 4
.param p0, "file" # Ljava/io/File;
.param p1, "bytes" # [B
.param p2, "listener" # Lcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;
.line 297
const/4 v0, 0x0
invoke-static {p0, p1, v0, p2}, Lcom/blankj/utilcode/util/FileIOUtils;->writeFileFromBytesByStream(Ljava/io/File;[BZLcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;)Z
move-result v0
return v0
.end method
.method public static writeFileFromBytesByStream(Ljava/io/File;[BZ)Z
.registers 4
.param p0, "file" # Ljava/io/File;
.param p1, "bytes" # [B
.param p2, "append" # Z
.line 249
const/4 v0, 0x0
invoke-static {p0, p1, p2, v0}, Lcom/blankj/utilcode/util/FileIOUtils;->writeFileFromBytesByStream(Ljava/io/File;[BZLcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;)Z
move-result v0
return v0
.end method
.method public static writeFileFromBytesByStream(Ljava/io/File;[BZLcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;)Z
.registers 5
.param p0, "file" # Ljava/io/File;
.param p1, "bytes" # [B
.param p2, "append" # Z
.param p3, "listener" # Lcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;
.line 313
if-nez p1, :cond_4
const/4 v0, 0x0
return v0
.line 314
:cond_4
new-instance v0, Ljava/io/ByteArrayInputStream;
invoke-direct {v0, p1}, Ljava/io/ByteArrayInputStream;-><init>([B)V
invoke-static {p0, v0, p2, p3}, Lcom/blankj/utilcode/util/FileIOUtils;->writeFileFromIS(Ljava/io/File;Ljava/io/InputStream;ZLcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;)Z
move-result v0
return v0
.end method
.method public static writeFileFromBytesByStream(Ljava/lang/String;[B)Z
.registers 5
.param p0, "filePath" # Ljava/lang/String;
.param p1, "bytes" # [B
.line 210
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->getFileByPath(Ljava/lang/String;)Ljava/io/File;
move-result-object v0
const/4 v1, 0x0
const/4 v2, 0x0
invoke-static {v0, p1, v1, v2}, Lcom/blankj/utilcode/util/FileIOUtils;->writeFileFromBytesByStream(Ljava/io/File;[BZLcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;)Z
move-result v0
return v0
.end method
.method public static writeFileFromBytesByStream(Ljava/lang/String;[BLcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;)Z
.registers 5
.param p0, "filePath" # Ljava/lang/String;
.param p1, "bytes" # [B
.param p2, "listener" # Lcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;
.line 267
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->getFileByPath(Ljava/lang/String;)Ljava/io/File;
move-result-object v0
const/4 v1, 0x0
invoke-static {v0, p1, v1, p2}, Lcom/blankj/utilcode/util/FileIOUtils;->writeFileFromBytesByStream(Ljava/io/File;[BZLcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;)Z
move-result v0
return v0
.end method
.method public static writeFileFromBytesByStream(Ljava/lang/String;[BZ)Z
.registers 5
.param p0, "filePath" # Ljava/lang/String;
.param p1, "bytes" # [B
.param p2, "append" # Z
.line 224
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->getFileByPath(Ljava/lang/String;)Ljava/io/File;
move-result-object v0
const/4 v1, 0x0
invoke-static {v0, p1, p2, v1}, Lcom/blankj/utilcode/util/FileIOUtils;->writeFileFromBytesByStream(Ljava/io/File;[BZLcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;)Z
move-result v0
return v0
.end method
.method public static writeFileFromBytesByStream(Ljava/lang/String;[BZLcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;)Z
.registers 5
.param p0, "filePath" # Ljava/lang/String;
.param p1, "bytes" # [B
.param p2, "append" # Z
.param p3, "listener" # Lcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;
.line 283
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->getFileByPath(Ljava/lang/String;)Ljava/io/File;
move-result-object v0
invoke-static {v0, p1, p2, p3}, Lcom/blankj/utilcode/util/FileIOUtils;->writeFileFromBytesByStream(Ljava/io/File;[BZLcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;)Z
move-result v0
return v0
.end method
.method public static writeFileFromIS(Ljava/io/File;Ljava/io/InputStream;)Z
.registers 4
.param p0, "file" # Ljava/io/File;
.param p1, "is" # Ljava/io/InputStream;
.line 79
const/4 v0, 0x0
const/4 v1, 0x0
invoke-static {p0, p1, v0, v1}, Lcom/blankj/utilcode/util/FileIOUtils;->writeFileFromIS(Ljava/io/File;Ljava/io/InputStream;ZLcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;)Z
move-result v0
return v0
.end method
.method public static writeFileFromIS(Ljava/io/File;Ljava/io/InputStream;Lcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;)Z
.registers 4
.param p0, "file" # Ljava/io/File;
.param p1, "is" # Ljava/io/InputStream;
.param p2, "listener" # Lcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;
.line 141
const/4 v0, 0x0
invoke-static {p0, p1, v0, p2}, Lcom/blankj/utilcode/util/FileIOUtils;->writeFileFromIS(Ljava/io/File;Ljava/io/InputStream;ZLcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;)Z
move-result v0
return v0
.end method
.method public static writeFileFromIS(Ljava/io/File;Ljava/io/InputStream;Z)Z
.registers 4
.param p0, "file" # Ljava/io/File;
.param p1, "is" # Ljava/io/InputStream;
.param p2, "append" # Z
.line 93
const/4 v0, 0x0
invoke-static {p0, p1, p2, v0}, Lcom/blankj/utilcode/util/FileIOUtils;->writeFileFromIS(Ljava/io/File;Ljava/io/InputStream;ZLcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;)Z
move-result v0
return v0
.end method
.method public static writeFileFromIS(Ljava/io/File;Ljava/io/InputStream;ZLcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;)Z
.registers 15
.param p0, "file" # Ljava/io/File;
.param p1, "is" # Ljava/io/InputStream;
.param p2, "append" # Z
.param p3, "listener" # Lcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;
.line 157
const/4 v0, 0x0
if-eqz p1, :cond_96
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->createOrExistsFile(Ljava/io/File;)Z
move-result v1
if-nez v1, :cond_b
goto/16 :goto_96
.line 158
:cond_b
const/4 v1, 0x0
.line 160
.local v1, "os":Ljava/io/OutputStream;
:try_start_c
new-instance v2, Ljava/io/BufferedOutputStream;
new-instance v3, Ljava/io/FileOutputStream;
invoke-direct {v3, p0, p2}, Ljava/io/FileOutputStream;-><init>(Ljava/io/File;Z)V
sget v4, Lcom/blankj/utilcode/util/FileIOUtils;->sBufferSize:I
invoke-direct {v2, v3, v4}, Ljava/io/BufferedOutputStream;-><init>(Ljava/io/OutputStream;I)V
move-object v1, v2
.line 161
const/4 v2, -0x1
if-nez p3, :cond_2c
.line 162
sget v3, Lcom/blankj/utilcode/util/FileIOUtils;->sBufferSize:I
new-array v3, v3, [B
.line 163
.local v3, "data":[B
:goto_20
invoke-virtual {p1, v3}, Ljava/io/InputStream;->read([B)I
move-result v4
move v5, v4
.local v5, "len":I
if-eq v4, v2, :cond_2b
.line 164
invoke-virtual {v1, v3, v0, v5}, Ljava/io/OutputStream;->write([BII)V
goto :goto_20
.line 166
.end local v3 # "data":[B
.end local v5 # "len":I
:cond_2b
goto :goto_52
.line 167
:cond_2c
invoke-virtual {p1}, Ljava/io/InputStream;->available()I
move-result v3
int-to-double v3, v3
.line 168
.local v3, "totalSize":D
const/4 v5, 0x0
.line 169
.local v5, "curSize":I
const-wide/16 v6, 0x0
invoke-interface {p3, v6, v7}, Lcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;->onProgressUpdate(D)V
.line 170
sget v6, Lcom/blankj/utilcode/util/FileIOUtils;->sBufferSize:I
new-array v6, v6, [B
.line 171
.local v6, "data":[B
:goto_3b
invoke-virtual {p1, v6}, Ljava/io/InputStream;->read([B)I
move-result v7
move v8, v7
.local v8, "len":I
if-eq v7, v2, :cond_52
.line 172
invoke-virtual {v1, v6, v0, v8}, Ljava/io/OutputStream;->write([BII)V
:try_end_45
.catch Ljava/io/IOException; {:try_start_c .. :try_end_45} :catch_67
.catchall {:try_start_c .. :try_end_45} :catchall_65
.line 173
add-int/2addr v5, v8
.line 174
int-to-double v9, v5
invoke-static {v9, v10}, Ljava/lang/Double;->isNaN(D)Z
invoke-static {v3, v4}, Ljava/lang/Double;->isNaN(D)Z
div-double/2addr v9, v3
:try_start_4e
invoke-interface {p3, v9, v10}, Lcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;->onProgressUpdate(D)V
:try_end_51
.catch Ljava/io/IOException; {:try_start_4e .. :try_end_51} :catch_67
.catchall {:try_start_4e .. :try_end_51} :catchall_65
goto :goto_3b
.line 177
.end local v3 # "totalSize":D
.end local v5 # "curSize":I
.end local v6 # "data":[B
.end local v8 # "len":I
:cond_52
:goto_52
const/4 v0, 0x1
.line 183
:try_start_53
invoke-virtual {p1}, Ljava/io/InputStream;->close()V
:try_end_56
.catch Ljava/io/IOException; {:try_start_53 .. :try_end_56} :catch_57
.line 186
goto :goto_5b
.line 184
:catch_57
move-exception v2
.line 185
.local v2, "e":Ljava/io/IOException;
invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
.line 188
.end local v2 # "e":Ljava/io/IOException;
:goto_5b
nop
.line 189
:try_start_5c
invoke-virtual {v1}, Ljava/io/OutputStream;->close()V
:try_end_5f
.catch Ljava/io/IOException; {:try_start_5c .. :try_end_5f} :catch_60
.line 193
goto :goto_64
.line 191
:catch_60
move-exception v2
.line 192
.restart local v2 # "e":Ljava/io/IOException;
invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
.line 177
.end local v2 # "e":Ljava/io/IOException;
:goto_64
return v0
.line 182
:catchall_65
move-exception v0
goto :goto_81
.line 178
:catch_67
move-exception v2
.line 179
.restart local v2 # "e":Ljava/io/IOException;
:try_start_68
invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
:try_end_6b
.catchall {:try_start_68 .. :try_end_6b} :catchall_65
.line 180
nop
.line 183
:try_start_6c
invoke-virtual {p1}, Ljava/io/InputStream;->close()V
:try_end_6f
.catch Ljava/io/IOException; {:try_start_6c .. :try_end_6f} :catch_70
.line 186
goto :goto_74
.line 184
:catch_70
move-exception v3
.line 185
.local v3, "e":Ljava/io/IOException;
invoke-virtual {v3}, Ljava/io/IOException;->printStackTrace()V
.line 188
.end local v3 # "e":Ljava/io/IOException;
:goto_74
if-eqz v1, :cond_7f
.line 189
:try_start_76
invoke-virtual {v1}, Ljava/io/OutputStream;->close()V
:try_end_79
.catch Ljava/io/IOException; {:try_start_76 .. :try_end_79} :catch_7a
goto :goto_7f
.line 191
:catch_7a
move-exception v3
.line 192
.restart local v3 # "e":Ljava/io/IOException;
invoke-virtual {v3}, Ljava/io/IOException;->printStackTrace()V
goto :goto_80
.line 193
.end local v3 # "e":Ljava/io/IOException;
:cond_7f
:goto_7f
nop
.line 180
:goto_80
return v0
.line 183
.end local v2 # "e":Ljava/io/IOException;
:goto_81
:try_start_81
invoke-virtual {p1}, Ljava/io/InputStream;->close()V
:try_end_84
.catch Ljava/io/IOException; {:try_start_81 .. :try_end_84} :catch_85
.line 186
goto :goto_89
.line 184
:catch_85
move-exception v2
.line 185
.restart local v2 # "e":Ljava/io/IOException;
invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
.line 188
.end local v2 # "e":Ljava/io/IOException;
:goto_89
if-eqz v1, :cond_94
.line 189
:try_start_8b
invoke-virtual {v1}, Ljava/io/OutputStream;->close()V
:try_end_8e
.catch Ljava/io/IOException; {:try_start_8b .. :try_end_8e} :catch_8f
goto :goto_94
.line 191
:catch_8f
move-exception v2
.line 192
.restart local v2 # "e":Ljava/io/IOException;
invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
goto :goto_95
.line 193
.end local v2 # "e":Ljava/io/IOException;
:cond_94
:goto_94
nop
.line 194
:goto_95
throw v0
.line 157
.end local v1 # "os":Ljava/io/OutputStream;
:cond_96
:goto_96
return v0
.end method
.method public static writeFileFromIS(Ljava/lang/String;Ljava/io/InputStream;)Z
.registers 5
.param p0, "filePath" # Ljava/lang/String;
.param p1, "is" # Ljava/io/InputStream;
.line 54
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->getFileByPath(Ljava/lang/String;)Ljava/io/File;
move-result-object v0
const/4 v1, 0x0
const/4 v2, 0x0
invoke-static {v0, p1, v1, v2}, Lcom/blankj/utilcode/util/FileIOUtils;->writeFileFromIS(Ljava/io/File;Ljava/io/InputStream;ZLcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;)Z
move-result v0
return v0
.end method
.method public static writeFileFromIS(Ljava/lang/String;Ljava/io/InputStream;Lcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;)Z
.registers 5
.param p0, "filePath" # Ljava/lang/String;
.param p1, "is" # Ljava/io/InputStream;
.param p2, "listener" # Lcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;
.line 111
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->getFileByPath(Ljava/lang/String;)Ljava/io/File;
move-result-object v0
const/4 v1, 0x0
invoke-static {v0, p1, v1, p2}, Lcom/blankj/utilcode/util/FileIOUtils;->writeFileFromIS(Ljava/io/File;Ljava/io/InputStream;ZLcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;)Z
move-result v0
return v0
.end method
.method public static writeFileFromIS(Ljava/lang/String;Ljava/io/InputStream;Z)Z
.registers 5
.param p0, "filePath" # Ljava/lang/String;
.param p1, "is" # Ljava/io/InputStream;
.param p2, "append" # Z
.line 68
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->getFileByPath(Ljava/lang/String;)Ljava/io/File;
move-result-object v0
const/4 v1, 0x0
invoke-static {v0, p1, p2, v1}, Lcom/blankj/utilcode/util/FileIOUtils;->writeFileFromIS(Ljava/io/File;Ljava/io/InputStream;ZLcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;)Z
move-result v0
return v0
.end method
.method public static writeFileFromIS(Ljava/lang/String;Ljava/io/InputStream;ZLcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;)Z
.registers 5
.param p0, "filePath" # Ljava/lang/String;
.param p1, "is" # Ljava/io/InputStream;
.param p2, "append" # Z
.param p3, "listener" # Lcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;
.line 127
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->getFileByPath(Ljava/lang/String;)Ljava/io/File;
move-result-object v0
invoke-static {v0, p1, p2, p3}, Lcom/blankj/utilcode/util/FileIOUtils;->writeFileFromIS(Ljava/io/File;Ljava/io/InputStream;ZLcom/blankj/utilcode/util/FileIOUtils$OnProgressUpdateListener;)Z
move-result v0
return v0
.end method
.method public static writeFileFromString(Ljava/io/File;Ljava/lang/String;)Z
.registers 3
.param p0, "file" # Ljava/io/File;
.param p1, "content" # Ljava/lang/String;
.line 508
const/4 v0, 0x0
invoke-static {p0, p1, v0}, Lcom/blankj/utilcode/util/FileIOUtils;->writeFileFromString(Ljava/io/File;Ljava/lang/String;Z)Z
move-result v0
return v0
.end method
.method public static writeFileFromString(Ljava/io/File;Ljava/lang/String;Z)Z
.registers 7
.param p0, "file" # Ljava/io/File;
.param p1, "content" # Ljava/lang/String;
.param p2, "append" # Z
.line 522
const/4 v0, 0x0
if-eqz p0, :cond_48
if-nez p1, :cond_6
goto :goto_48
.line 523
:cond_6
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->createOrExistsFile(Ljava/io/File;)Z
move-result v1
if-nez v1, :cond_d
return v0
.line 524
:cond_d
const/4 v1, 0x0
.line 526
.local v1, "bw":Ljava/io/BufferedWriter;
:try_start_e
new-instance v2, Ljava/io/BufferedWriter;
new-instance v3, Ljava/io/FileWriter;
invoke-direct {v3, p0, p2}, Ljava/io/FileWriter;-><init>(Ljava/io/File;Z)V
invoke-direct {v2, v3}, Ljava/io/BufferedWriter;-><init>(Ljava/io/Writer;)V
move-object v1, v2
.line 527
invoke-virtual {v1, p1}, Ljava/io/BufferedWriter;->write(Ljava/lang/String;)V
:try_end_1c
.catch Ljava/io/IOException; {:try_start_e .. :try_end_1c} :catch_29
.catchall {:try_start_e .. :try_end_1c} :catchall_27
.line 528
const/4 v0, 0x1
.line 534
nop
.line 535
:try_start_1e
invoke-virtual {v1}, Ljava/io/BufferedWriter;->close()V
:try_end_21
.catch Ljava/io/IOException; {:try_start_1e .. :try_end_21} :catch_22
.line 539
goto :goto_26
.line 537
:catch_22
move-exception v2
.line 538
.local v2, "e":Ljava/io/IOException;
invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
.line 528
.end local v2 # "e":Ljava/io/IOException;
:goto_26
return v0
.line 533
:catchall_27
move-exception v0
goto :goto_3b
.line 529
:catch_29
move-exception v2
.line 530
.restart local v2 # "e":Ljava/io/IOException;
:try_start_2a
invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
:try_end_2d
.catchall {:try_start_2a .. :try_end_2d} :catchall_27
.line 531
nop
.line 534
if-eqz v1, :cond_39
.line 535
:try_start_30
invoke-virtual {v1}, Ljava/io/BufferedWriter;->close()V
:try_end_33
.catch Ljava/io/IOException; {:try_start_30 .. :try_end_33} :catch_34
goto :goto_39
.line 537
:catch_34
move-exception v3
.line 538
.local v3, "e":Ljava/io/IOException;
invoke-virtual {v3}, Ljava/io/IOException;->printStackTrace()V
goto :goto_3a
.line 539
.end local v3 # "e":Ljava/io/IOException;
:cond_39
:goto_39
nop
.line 531
:goto_3a
return v0
.line 534
.end local v2 # "e":Ljava/io/IOException;
:goto_3b
if-eqz v1, :cond_46
.line 535
:try_start_3d
invoke-virtual {v1}, Ljava/io/BufferedWriter;->close()V
:try_end_40
.catch Ljava/io/IOException; {:try_start_3d .. :try_end_40} :catch_41
goto :goto_46
.line 537
:catch_41
move-exception v2
.line 538
.restart local v2 # "e":Ljava/io/IOException;
invoke-virtual {v2}, Ljava/io/IOException;->printStackTrace()V
goto :goto_47
.line 539
.end local v2 # "e":Ljava/io/IOException;
:cond_46
:goto_46
nop
.line 540
:goto_47
throw v0
.line 522
.end local v1 # "bw":Ljava/io/BufferedWriter;
:cond_48
:goto_48
return v0
.end method
.method public static writeFileFromString(Ljava/lang/String;Ljava/lang/String;)Z
.registers 4
.param p0, "filePath" # Ljava/lang/String;
.param p1, "content" # Ljava/lang/String;
.line 483
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->getFileByPath(Ljava/lang/String;)Ljava/io/File;
move-result-object v0
const/4 v1, 0x0
invoke-static {v0, p1, v1}, Lcom/blankj/utilcode/util/FileIOUtils;->writeFileFromString(Ljava/io/File;Ljava/lang/String;Z)Z
move-result v0
return v0
.end method
.method public static writeFileFromString(Ljava/lang/String;Ljava/lang/String;Z)Z
.registers 4
.param p0, "filePath" # Ljava/lang/String;
.param p1, "content" # Ljava/lang/String;
.param p2, "append" # Z
.line 497
invoke-static {p0}, Lcom/blankj/utilcode/util/FileIOUtils;->getFileByPath(Ljava/lang/String;)Ljava/io/File;
move-result-object v0
invoke-static {v0, p1, p2}, Lcom/blankj/utilcode/util/FileIOUtils;->writeFileFromString(Ljava/io/File;Ljava/lang/String;Z)Z
move-result v0
return v0
.end method