| BiocFile-class {BiocIO} | R Documentation |
BiocFile objects
Description
A BiocFile object is the base class for classes representing
files accessible with rtracklayer. It wraps a resource (either a path,
URL or connection). We can represent a list of BiocFile objects
with a BiocFileList.
Accessor Methods
In the code snippets below, x represents a BiocFile
object.
-
path(x): Gets the path, as acharactervector, to the resource represented by theBiocFileobject, if possible. -
resource(x): Gets the low-level resource, either a character vector (a path or URL) or a connection. -
fileFormat(x): Gets a string identifying the file format. Can also be called directly on a character file path, in which case it uses a heuristic based on the file extension.
Coercion
-
as.character(x): Returns the path of the file as a character vector.
Related functions
-
FileForFormat(path, format = file_ext(path)): Determines the file type ofpathand returns a high-level file object such as BamFile, BEDFile, BigWigFile etc.. -
bestFileFormat(x): Returns the best possible file format for a given file. This function searches through loaded packages for "File" classes that contain S4 methods for 'export' and 'import' for that class. -
decompress(x): Returns a decompressed representation of aCompressedFileorcharacterobject.
Author(s)
Michael Lawrence
See Also
Implementing classes include: BigWigFile,
TwoBitFile, BEDFile,
GFFFile, and WIGFile.
Examples
## For our examples, we create a class called CSVFILE that extends BiocFile
.CSVFile <- setClass("CSVFile", contains = "BiocFile")
## Constructor
CSVFile <-
function(resource)
{
.CSVFile(resource = resource)
}
setMethod("import", "CSVFile",
function(con, format, text, ...)
{
read.csv(resource(con), ...)
})
## Define export
setMethod("export", c("data.frame", "CSVFile"),
function(object, con, format, ...)
{
write.csv(object, resource(con), ...)
})
## Recommend CSVFile class for .csv files
temp <- tempfile(fileext = ".csv")
FileForFormat(temp)
## Create CSVFile
csv <- CSVFile(temp)
## Display path of file
path(csv)
## Display resource of file
resource(csv)