File size: 3,031 Bytes
c71b48d
 
8f54139
933a7e0
8f54139
bf36acb
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8f54139
 
 
 
 
 
 
 
 
933a7e0
8f54139
c71b48d
 
 
8f54139
 
 
c71b48d
8f54139
c71b48d
8f54139
c71b48d
 
8f54139
c71b48d
8f54139
c71b48d
8f54139
c71b48d
8f54139
c71b48d
 
 
 
8f54139
c71b48d
8f54139
c71b48d
8f54139
c71b48d
 
 
 
8f54139
c71b48d
8f54139
c71b48d
8f54139
 
 
 
 
 
 
c71b48d
b5016c6
 
 
 
 
8f54139
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
import gradio as gr

# Function to list files with .csv and .txt extensions in the current directory
def list_files(file_path):
    import os
    
    icon_csv = "📄 "
    icon_txt = "📑 "
    
    current_directory = os.getcwd()
    file_list = []
    for filename in os.listdir(current_directory):
        if filename.endswith(".csv"):
            file_list.append(icon_csv + filename)
        elif filename.endswith(".txt"):
            file_list.append(icon_txt + filename)
    if file_list:
        return "\n".join(file_list)
    else:
        return "No .csv or .txt files found in the current directory."


# Function to list files with .csv and .txt extensions in the current directory
def list_filesold(file_path):
    import os
    current_directory = os.getcwd()
    file_list = []
    for filename in os.listdir(current_directory):
        if filename.endswith(".csv") or filename.endswith(".txt"):
            file_list.append(filename)
    if file_list:
        return "\n".join(file_list)
    else:
        return "No .csv or .txt files found in the current directory."

# Function to read a file
def read_file(file_path):
    try:
        with open(file_path, "r") as file:
            contents = file.read()
            return f"{contents}"
            #return f"Contents of {file_path}:\n{contents}"
    except FileNotFoundError:
        return "File not found."

# Function to delete a file
def delete_file(file_path):
    try:
        import os
        os.remove(file_path)
        return f"{file_path} has been deleted."
    except FileNotFoundError:
        return "File not found."

# Function to write to a file
def write_file(file_path, content):
    try:
        with open(file_path, "w") as file:
            file.write(content)
        return f"Successfully written to {file_path}."
    except:
        return "Error occurred while writing to file."

# Function to append to a file
def append_file(file_path, content):
    try:
        with open(file_path, "a") as file:
            file.write(content)
        return f"Successfully appended to {file_path}."
    except:
        return "Error occurred while appending to file."

demo = gr.Blocks()
with demo:
    fileName = gr.Textbox(label="Filename")
    fileContent = gr.TextArea(label="File Content")
    completedMessage = gr.Textbox(label="Completed")
    
    label = gr.Label()

    listFiles = gr.Button("📄 List CSV and TXT File(s)")
    readFile = gr.Button("📖 Read File")
    saveFile = gr.Button("💾 Save File")
    deleteFile = gr.Button("🗑️ Delete File")
    appendFile = gr.Button("➕ Append File")
    
    listFiles.click(list_files, inputs=fileName, outputs=fileContent)
    readFile.click(read_file, inputs=fileName, outputs=fileContent)
    saveFile.click(write_file, inputs=[fileName, fileContent], outputs=completedMessage)
    deleteFile.click(delete_file, inputs=fileName, outputs=completedMessage)
    appendFile.click(append_file, inputs=[fileName, fileContent], outputs=completedMessage )
    
demo.launch()