Delphi ::: Dicas & Truques ::: Arquivos e Diretórios |
Como retornar o diretório atual em Delphi usando a função GetDir()Quantidade de visualizações: 13078 vezes |
Em algumas situações precisamos obter o diretório atual, ou seja, aquele a partir do qual nosso programa está sendo executado. Em Delphi isso pode ser feito com o auxílio da procedure GetDir(). Esta procedure requer um valor inteiro na faixa de 0 a 3 e uma string passada por referência. Em geral usamos o valor 0 no primeiro argumento para representar o drive padrão. Veja o exemplo:
procedure TForm1.Button1Click(Sender: TObject);
var
diretorio_atual: string;
begin
// vamos obter o diretório atual e atribuí-lo
// na variável diretorio_atual
GetDir(0, diretorio_atual);
// vamos exibir o resultado
ShowMessage('O drive e diretório atual são: ' +
diretorio_atual);
end;
Ao executar este código nós teremos o seguinte resultado: O drive e diretório atual são: C:\Users\Osmar\Documents\RAD Studio\Projects Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009. |
PHP ::: Dicas & Truques ::: Arquivos e Diretórios |
Arquivos e diretórios em PHP - Como montar uma árvore de arquivos e diretórios recursivamenteQuantidade de visualizações: 16783 vezes |
|
Este exemplo mostra como listar todo o conteúdo de um diretório recursivamente em forma de árvore. Note que usei um objeto da classe RecursiveDirectoryIterator da linguagem PHP para facilitar nosso trabalho. Veja o código completo para o exemplo:
<html>
<head>
<title>Estudando PHP</title>
</head>
<body>
<?php
// nome e local do diretório
$dir = $_SERVER["DOCUMENT_ROOT"] . "/escola/app";
// função recursiva que lista o diretório atual
function montarArvore($it){
echo '<ul>';
for(; $it->valid(); $it->next()){
if($it->isDir() && !$it->isDot()) {
printf('<li>%s</li>', $it->current());
if($it->hasChildren()) {
$filho = $it->getChildren();
echo '<ul>' . montarArvore($filho) . '</ul>';
}
}
elseif($it->isFile()) {
echo '<li>'. $it->current() . '</li>';
}
}
echo '</ul>';
}
// faz a primeira chamada à função recursiva
montarArvore(new RecursiveDirectoryIterator($dir));
?>
</body>
</html>
|
PHP ::: Dicas & Truques ::: URLs, Documentos e Páginas |
Como obter o caminho da raiz do site usando a variável global $_SERVER['DOCUMENT_ROOT'] do PHPQuantidade de visualizações: 14131 vezes |
|
Como obter o caminho da raiz do site usando a variável global $_SERVER['DOCUMENT_ROOT'] do PHP Em algumas situações nós precisamos obter o caminho do diretório raiz no qual o nosso documento ou código PHP está sendo executado. Para isso nós podemos usar a variável pré-definida $_SERVER['DOCUMENT_ROOT']. Esta variável costuma ser disponibilizada pela maioria dos servidores web. Veja um exemplo de seu uso: <html> <head> <title>Estudos PHP</title> </head> <body> <?php echo "A raiz do site é: " . $_SERVER['DOCUMENT_ROOT']; ?> </body> </html> Ao executar este código nós teremos o seguinte resultado: A raiz do site é: C:/xampp/htdocs |
Java ::: Fundamentos da Linguagem ::: Tipos de Dados |
Java para iniciantes - Como usar o tipo de dados byte da linguagem JavaQuantidade de visualizações: 12896 vezes |
O tipo de dados byte pode ser usado quando queremos armazenar valores inteiros na faixa ?128 à 127. Veja um exemplo:
public class Estudos{
static byte valor = 102;
public static void main(String args[]){
System.out.println("O valor da variável é: "
+ valor);
System.exit(0);
}
}
Porém, é preciso estar atento a um detalhe muito importante (testado na versão 6 do SDK). Veja o trecho de código seguinte:
public class Estudos{
public static void main(String args[]){
byte a = 5;
byte b = 6;
byte soma = a + b;
System.out.println("O resultado é: " + soma);
System.exit(0);
}
}
À primeira vista este código está correto, visto que a soma das variáveis a e b não ultrapassam a faixa do tipo byte. Porém, ao tentarmos compilar, temos a seguinte mensagem de erro:
Estudos.java:5: possible loss of precision
found : int
required: byte
byte soma = a + b;
^
1 error
Isso acontece porque o tipo de dados resultante da aplicação do operador de adição (e demais operadores binários) a dois números, é no mínimo int. Podemos, é claro, fazer uma coerção de dados (cast). Veja: byte a = 5; byte b = 6; byte soma = (byte)(a + b); O tipo de dados byte pode ser convertido (sem a necessidade de cast) para os seguintes tipos: byte -> short -> int -> long -> float -> double Um tipo byte não pode ser convertido implicitamente para o tipo char. Isso acontece porque o tipo char não possui sinal. |
Nossas 20 dicas & truques de programação mais populares |
|
Portugol - Exercício Resolvido de Portugol - Um programa que lê três números inteiros e mostra o maior VB.NET - Como inverter o conteúdo de uma string em VB.NET usando os métodos ToCharArray() e Reverse() |
Você também poderá gostar das dicas e truques de programação abaixo |
|
JavaScript - Como exibir apenas dois dígitos após o ponto decimal em JavaScript usando a função toFixed() do objeto Number Delphi - Como obter a quantidade de caracteres em uma palavra ou texto usando a função Length() do Delphi |
Nossas 20 dicas & truques de programação mais recentes |
Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site |
|
Python - Como criar o jogo Pedra, Papel, Tesoura em Python - Jogo completo em Python com código comentado |
Últimos Exercícios Resolvidos |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |





