📜  在 Julia 中将输出存储在文件上

📅  最后修改于: 2021-11-25 04:38:52             🧑  作者: Mango

Julia 提供了一个庞大的库来以多种文件格式存储和保存输出。我们可以以各种形式存储输出,例如 CSV(逗号分隔值)或 Excel,或者只是一个文本文件。

在文本文件上存储数据

使用 open()函数

为了将数据存储在文本文件中,我们需要使用带有“w”标志的open()函数,它允许我们将输出写入文件。 open函数有两个参数,第一个是文件名,第二个是您需要打开文件的模式。

为了将数据存储在文本文件中,我们需要在文件名后使用.txt扩展名。此外,如果文件不存在,它将为您创建文件。控制台打印文件中的字符数。

例子:

Julia
# Output in a txt file
# opening file with .txt extension and in write mode
 
# let the ans be the output of a question
ans = "Hello World"
 
open("geek.txt", "w") do file
    write(file, ans)
end


Julia
# importing the module
using DelimitedFiles
 
# The number is the output of random numbers
numbers = rand(5)
 
writedlm("geek.txt", numbers)


Julia
# importing the required module
using CSV, DataFrames
 
# a 2d array of random numbers
numbers = rand(5, 5)
 
# using write method
CSV.write("geek.csv", DataFrame(numbers),
                         header = false)


Julia
# importing DelimitedFiles
using DelimitedFiles
 
# Here numbers is a 2d array
numbers = rand(5, 5)
 
# Since it is a comma seperated file we need to,
# to seperate into a table of row and col
writedlm("geek.csv", numbers, ", ")


Julia
using XLSX
 
# using "w" to write output
XLSX.openxlsx("geek.xls", mode="w") do f
           sheet = f[1]
            
           # Used for renaming the file for convience
           XLSX.rename!(sheet, "new_sheet")
            
           # This will add output along A coloumn
           sheet["A1"] = "Welcome"
           sheet["A2"] = "to"
           sheet["A3"] = "GeeksForGeeks"
end


Julia
# importing DelimitedFiles
using DelimitedFiles
 
# here numbers is an array
# of 5*5 random numbers
numbers = rand(5, 5)
 
# writedlm function
writedlm("geek.xls", numbers)


使用 DelimitedFiles.writedlm()函数

另一种存储数据的方法是使用DelimitedFiles.writedlm()函数。该函数有两个参数,第一个是文件名,第二个参数是输出。为了使用这个函数,我们需要导入DelimitedFiles。

例子:

朱莉娅

# importing the module
using DelimitedFiles
 
# The number is the output of random numbers
numbers = rand(5)
 
writedlm("geek.txt", numbers)

在 CSV 文件上存储数据

使用 CSV.jl 库

我们可以通过导入库CSV.jl来将数据存储在 CSV 文件中,该库提供了与将读取和写入输出存储到 CSV 文件相关的各种功能。它提供了比其他方法更多的控制。我们还需要安装 DataFrame 包。

为了使用它,我们需要安装这个包。要安装,请在 Julia 控制台中键入以下内容。

# importing the Pkg module
using Pkg
Pkg.add("CSV")

# installing the DataFrame
Pkg.add("DataFrames")

现在要存储输出,我们只需要导入它。

例子:

朱莉娅

# importing the required module
using CSV, DataFrames
 
# a 2d array of random numbers
numbers = rand(5, 5)
 
# using write method
CSV.write("geek.csv", DataFrame(numbers),
                         header = false)                                                        

使用 DelimitedFiles.writedlm()函数

另一种存储数据的方法是使用DelimitedFiles.writedlm()函数。该函数有两个参数,第一个是文件名,第二个参数是输出。为了使用这个函数,我们需要导入 DelimitedFiles。这里的文件扩展名也必须是.csv

例子:

朱莉娅

# importing DelimitedFiles
using DelimitedFiles
 
# Here numbers is a 2d array
numbers = rand(5, 5)
 
# Since it is a comma seperated file we need to,
# to seperate into a table of row and col
writedlm("geek.csv", numbers, ", ")

在 Excel 文件中存储数据

使用 XLXS.jl 库

我们可以通过导入库XLXS.jl来将数据存储在 excel 文件中,该库提供了与将读取和写入输出存储到 excel 文件相关的各种功能。它提供了比其他方法更多的控制。

要使用该软件包,我们首先需要安装该软件包。要安装该软件包,只需在 Julia 终端中编写以下命令。

# importing the Pkg module
using Pkg

Pkg.add("XLSX")

现在为了存储数据,我们可以使用它的各种方法。我们需要使用“w”标志才能将输出写入 xls 文件。

例子:

朱莉娅

using XLSX
 
# using "w" to write output
XLSX.openxlsx("geek.xls", mode="w") do f
           sheet = f[1]
            
           # Used for renaming the file for convience
           XLSX.rename!(sheet, "new_sheet")
            
           # This will add output along A coloumn
           sheet["A1"] = "Welcome"
           sheet["A2"] = "to"
           sheet["A3"] = "GeeksForGeeks"
end

使用 DelimitedFiles.writedlm()函数

另一种存储数据的方法是使用DelimitedFiles.writedlm()函数。该函数有两个参数,第一个是文件名,第二个参数是输出。为了使用这个函数,我们需要导入DelimitedFiles。这里的文件扩展名也必须是.xls。

例子:

朱莉娅

# importing DelimitedFiles
using DelimitedFiles
 
# here numbers is an array
# of 5*5 random numbers
numbers = rand(5, 5)
 
# writedlm function
writedlm("geek.xls", numbers)