Document Class
Descrição
.creationDate
História
| Release | Mudanças | 
|---|---|
| 17 R5 | Adicionado | 
.creationDate : Date
Descrição
A propriedade .creationDate retorna a data de criação do arquivo.
Essa propriedade é somente leitura.
.creationTime
História
| Release | Mudanças | 
|---|---|
| 17 R5 | Adicionado | 
.creationTime : Time
Descrição
A propriedade .creationTime retorna o horário de criação do arquivo (expresso como um número de segundos a partir de 00:00).
Essa propriedade é somente leitura.
.exists
História
| Release | Mudanças | 
|---|---|
| 17 R5 | Adicionado | 
.exists : Boolean
Descrição
A propriedade .exists retorna true se o arquivo existe no disco e false caso contrário.
Essa propriedade é somente leitura.
.extension
História
| Release | Mudanças | 
|---|---|
| 17 R5 | Adicionado | 
.extension : Text
Descrição
A propriedade .extension retorna  a extensão do nome do arquivo (se houver). Uma extensão sempre começa com ".". Uma extensão sempre começa com "." A propriedade devolve uma string vazia se o nome do arquivo não tiver extensão.
Essa propriedade é somente leitura.
.fullName
História
| Release | Mudanças | 
|---|---|
| 17 R5 | Adicionado | 
.fullName : Text
Descrição
A propriedade .fullName retorna o nome completo do arquivo, incluindo sua extensão (se houver).
Essa propriedade é somente leitura.
.hidden
História
| Release | Mudanças | 
|---|---|
| 17 R5 | Adicionado | 
.hidden : Boolean
Descrição
A propriedade .hidden retorna true se o arquivo estiver definido como "hidden" no nível do sistema, e false caso contrário.
Essa propriedade é leitura/escrita.
.isAlias
História
| Release | Mudanças | 
|---|---|
| 17 R5 | Adicionado | 
.isAlias : Boolean
Descrição
A propriedade .isAlias retorna true se o arquivo for um alias, um atalho ou um link simbólico, e false caso contrário.
Essa propriedade é somente leitura.
.isFile
História
| Release | Mudanças | 
|---|---|
| 17 R5 | Adicionado | 
.isFile : Boolean
Descrição
A propriedade .isFile retorna sempre true para um arquivo.
Essa propriedade é somente leitura.
.isFolder
História
| Release | Mudanças | 
|---|---|
| 17 R5 | Adicionado | 
.isFolder : Boolean
Descrição
A propriedade .isFolder retorna sempre false para um arquivo.
Essa propriedade é somente leitura.
.isWritable
História
| Release | Mudanças | 
|---|---|
| 17 R5 | Adicionado | 
.isWritable : Boolean
Descrição
A propriedade .isWritable retorna true se o arquivo existe no disco e é gravável.
A propriedade verifica a habilidade da aplicação 4D de escrever no disco (direitos de acesso), não depende apenas do atributo writable do arquivo.
Essa propriedade é somente leitura.
Exemplo
 $myFile:=File("C:\\Documents\\Archives\\ReadMe.txt";fk platform path)
 If($myFile.isWritable)
    $myNewFile:=$myFile.setText("Added text")
 End if
.modificationDate
História
| Release | Mudanças | 
|---|---|
| 17 R5 | Adicionado | 
.modificationDate : Date
Descrição
A propriedade .modificationDate retorna  a data da última modificação do arquivo.
Essa propriedade é somente leitura.
.modificationTime
História
| Release | Mudanças | 
|---|---|
| 17 R5 | Adicionado | 
.modificationTime : Time
Descrição
A propriedade .modificationTime retorna a hora da última modificação do arquivo (expressa como um número de segundos a partir de 00:00).
Essa propriedade é somente leitura.
.name
História
| Release | Mudanças | 
|---|---|
| 17 R5 | Adicionado | 
.name : Text
Descrição
A propriedade .name retorna  o nome do arquivo sem extensão (se houver).
Essa propriedade é somente leitura.
.original
História
| Release | Mudanças | 
|---|---|
| 17 R5 | Adicionado | 
.original : 4D.File
.original : 4D.Folder
Descrição
A propriedade .original retorna o elemento de destino para um alias, um atalho ou um arquivo de link simbólico. O elemento alvo pode ser:
- um objeto File
- um objeto folder
Para arquivos não-alias, a propriedade retorna o mesmo objeto de arquivo que o arquivo.
Essa propriedade é somente leitura.
.parent
História
| Release | Mudanças | 
|---|---|
| 17 R5 | Adicionado | 
.parent : 4D.Folder
Descrição
A propriedade .parent retorna  o objeto pasta pai do arquivo. .
Essa propriedade é somente leitura.
.path
História
| Release | Mudanças | 
|---|---|
| 17 R5 | Adicionado | 
.path : Text
Descrição
A propriedade .path retorna  o caminho POSIX do arquivo. .
Essa propriedade é somente leitura.
.platformPath
História
| Release | Mudanças | 
|---|---|
| 17 R5 | Adicionado | 
.platformPath : Text
Descrição
A propriedade .platformPath retorna o caminho do arquivo expresso com a sintaxe da plataforma atual.
Essa propriedade é somente leitura.
.size
História
| Release | Mudanças | 
|---|---|
| 17 R5 | Adicionado | 
.size : Real
Descrição
A propriedade .size retorna  o tamanho do arquivo expresso em bytes. Se o arquivo não existir em disco, o tamanho é 0.
Essa propriedade é somente leitura.
.copyTo()
História
| Release | Mudanças | 
|---|---|
| 17 R5 | Adicionado | 
.copyTo( destinationFolder : 4D.Folder { ; newName : Text } { ; overwrite : Integer } ) : 4D.File
| Parâmetro | Tipo | Descrição | |
|---|---|---|---|
| destinationFolder | 4D. Folder | -> | Pasta de destino | 
| newName | Text | -> | Nome para a copia | 
| overwrite | Integer | -> | fk overwritepara substituir os elementos existentes | 
| Resultados | 4D. File | <- | Arquivo copiado | 
Descrição
A função .copyTo() copia o objeto File para a destinationFolder.
A destinationFolder deve existir em disco, senão um erro é gerado.
Como padrão, o arquivo é copiado com o nome do arquivo original. Se quiser renomear a cópia, passe o novo nome no parâmetro newName. O novo nome deve cumprir com as regras de nomenclatura (por exemplo, não deve conter caracteres como ":", "/", etc.), do contrário se devolve um erro.
Se já existir um arquivo com o mesmo nome em destinationFolder, por padrão 4D gera um erro. Pode passar a constante fk overwrite no parâmetro overwrite para ignorar e sobrescriber o arquivo existente
| Parâmetros | Valor | Comentário | 
|---|---|---|
| fk overwrite | 4 | Sobrescrever os elementos existentes, se houver | 
Valor retornado
O objeto File copiado.
Exemplo
Se quiser copiar um file imagem da pasta de documentos do usuário a pasta da aplicação:
var $source; $copy : Object
$source:=Folder(fk documents folder).file("Pictures/photo.png")
$copy:=$source.copyTo(Folder("/PACKAGE");fk overwrite)
.getContent()
História
| Release | Mudanças | 
|---|---|
| 19 R2 | Returns 4D. Blob | 
| 17 R5 | Adicionado | 
.getContent( ) : 4D.Blob
| Parâmetro | Tipo | Descrição | |
|---|---|---|---|
| Resultados | 4D. Blob | <- | Conteúdo do arquivo | 
Descrição
A função .getContent() retorna um objeto 4D.Blob que contém todo o conteúdo de um arquivo. Para obter informações sobre BLOBs, consulte a seção BLOB.
Valor retornado
Um objeto 4D.Blob.
Exemplo
Para salvar o conteúdo de um documento em um campo BLOB:
 var $vPath : Text
 $vPath:=Select document(""; "*"; "Select a document";0)
 If(OK=1) //Se tiver sido escolhido um documento
    [aTable]aBlobField:=File($vPath;fk platform path).getContent()
 End if
.getIcon()
História
| Release | Mudanças | 
|---|---|
| 17 R5 | Adicionado | 
.getIcon( { size : Integer } ) : Picture
| Parâmetro | Tipo | Descrição | |
|---|---|---|---|
| size | Integer | -> | Longitude de lado da imagem devolvida (píxeles) | 
| Resultados | Imagem | <- | Ícone | 
Descrição
A função .getIcon() retorna o ícone do arquivo.
O parâmetro opcional size especifica as dimensões em píxels do icone devolvido. Este valor representa em realidade a longitude do lado do quadrado que contém o icone. Icones são geralmente definidos como 32x32 píxels ('icones grandes') ou 16x16 ('icones pequenos'). Se passar 0 ou omitir este parâmetro, se devolve a versão 'icone grande'
Se o arquivo não existir no disco, um ícone em branco padrão será retornado.
Valor retornado
Imagen do ícone de arquivo.
.getText()
História
| Release | Mudanças | 
|---|---|
| 17 R5 | Adicionado | 
.getText( { charSetName : Text { ; breakMode : Integer } } ) : Text
.getText( { charSetNum : Integer { ; breakMode : Integer } } ) : Text
| Parâmetro | Tipo | Descrição | |
|---|---|---|---|
| charSetName | Text | -> | Nome do conjunto de caracteres | 
| charSetNum | Integer | -> | Número de conjuntos de caracteres | 
| breakMode | Integer | -> | Modo de processamento para quebras de linha | 
| Resultados | Text | <- | Texto do documento | 
Descrição
A função .getText() retorna o conteúdo do arquivo como texto.
Opcionalmente, você pode designar o conjunto de caracteres a ser usado na leitura do conteúdo. Você pode passar também:
- em charSetName, uma string que contém o nome padrão definido (por exemplo "ISO-8859-1" ou "UTF-8"),
- ou em charSetNum, o MIBEnum ID (número) do nome de configuração padrão.
Para a lista de conjuntos de caracteres suportados por 4D, consulte a descrição do comando
CONVERT FROM TEXT.
Se o documento contiver uma nota de ordem de byte (BOM), 4D usa o conjunto de caracteres que definiu em vez do especificado no charSetName ou charSetNum (este parâmetro é então ignorado). Se o documento não contiver uma LDM e se o charSetName ou charSetNum for omitido, por padrão 4D usa o conjunto de caracteres "UTF-8".
Em breakMode, você pode passar um número indicando o processamento a aplicar aos caracteres de fim de linha no documento. As seguintes constantes do tema "Documentos do Sistema" estão disponíveis:
| Parâmetros | Valor | Comentário | 
|---|---|---|
| Document unchanged | 0 | Não processado | 
| Document with native format | 1 | (Padrão) As quebras de linha são convertidas para o formato nativo do sistema operacional: CR (retorno de carro) sob macOS, CRLF (retorno do carro + salto de linha) em Windows | 
| Documento com CRLF | 2 | Quebras de linha são convertidas em formato Windows: CRLF (retorno de carro + quebra de linha) | 
| Documento com CR | 3 | Quebras de linha são convertidas para o formato macOS: CR (retorno de carro) | 
| Documento com LF | 4 | Quebras de linha são convertidas em formato Unix: LF (feed de linha) | 
Por padrão, ao omitir o parâmetro breakMode, as quebras de linha são processadas no modo nativo (1).
Valor retornado
Texto do arquivo.
Exemplo
Dado o seguinte documento de texto (os campos são separados por tabulações):
id name price vat
3 thé 1.06€ 19.6
2 café 1.05€ 19.6
Quando você executar este código:
 $myFile:=Folder(fk documents folder).file("Billing.txt") //UTF-8 por padrão
 $txt:=$myFile.getText()
... você obtém o seguinte para $txt:
"id\tname\tprice\tvat\r\n3\tthé\t1.06€\t19.6\r\n2\tcafé\t1.05€\t19.6"
com \t (tabulação) como separador e \r\n (CRLF) como delimitador de linha.
Aqui está outro exemplo com o mesmo arquivo, mas um delimitador de linha diferente:
 $txt:=$myFile.getText("UTF-8"; Document with LF)
Neste caso, o conteúdo de $txt é o seguinte:
"id\tname\tprice\tvat\n3\tthé\t1.06€\t19.6\n2\tcafé\t1.05€\t19.6"
Este tempo \n (LF) é usado como delimitador de linha.