Dicas rápidas

Playlist do Amarok pára após tocar uma música

Recentemente enfrentei um problema que vários outros usuários do Amarok 2.1.1 vêm enfrentando: O Amarok só toca uma música do playlist e depois pára.

Para resolver este problema: Feche o Amarok, delete o arquivo  ~/.kde/share/apps/amarok/current.xspf e então reinicie o Amarok.

Pelo menos comigo funcionou e espero que funcione com todos! ;)

Até +.


Inserindo arquivos em campos BLOB de uma base de dados

Para inserir um arquivo, seja ele de qualquer formato, é necessário utilizar o método setBinaryStream implementado pelo PreparedStatement.

PreparedStatemente.setBinaryStream(int índice, Inputstream is, int tamanho);

Para o exemplo definimos uma tabela chamada arquivo que contém um campo BLOB chamado ARQ.

//Conexão normal, como qualquer JDBC
Class.forName("oracle.jdbc.driver.OracleDriver");
Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@<IP>:<PORTA>:<SID>","<USUARIO>","<SENHA>");

//Acessando o arquivo a ser enviado e recuperando um InputStream
File arquivo = new File("<CAMINHO_COMPLETO_DO_ARQUIVO>");
FileInputStream fis = new FileInputStream(arquivo);

//Preparando a chamada normalmente
PreparedStatement ps = conn.prepareStatement("INSERT INTO ARQUIVO (arq) VALUES(?)");

//Informando o inputstream e o tamanho do arquivo a ser enviado
ps.setBinaryStream(1, fis, (int)arquivo.length());

ps.execute();

ps.close();
conn.close();

No meu teste utilizei a base de dados Oracle 8i. Como não tenho à disposição uma base MySQL/PostgreSQL/MS SQL Server, deixo vocês encarregados de testar e me enviar os resultados, OK? ;)

[]‘s e até a próxima!


Habilitando Telnet e TFTP no Windows 7

Assim como o Windows Vista, o Windows 7 não vem com os clients do Telnet e do TFTP habilitado por padrão.

Para habilitá-lo clique em Painel de Controle > Programas e Recursos > na lateral esquerda clique em Ativar ou desativar recursos do Windows > habilite o Cliente Telnet e Cliente TFTP e então clique em OK.

Não testei no Windows Vista, mas o processo deve ser o mesmo.

Até mais!


Os comandos mais usados de Unix agora para Win32

Já pensou rodar comandos como grep, chown, tail e su no Windows e ainda poder substituir o dir pelo ls?

Procurando na internet por uma alternativa Win32 para o comando tail, encontrei o UnixUtils. Uma compilação para Windows dos comandos mais utilizados no Linux/Unix.

Você pode fazer o download do ZIP pelo SourceForge clicando aqui.

Até a próxima!


Limitando número máximo de caracteres em um JTextField

A implementação padrão do JTextField não permite definir um limite para inserção de caracteres. Para habilitar este recurso é necessário implementar um Document, onde será necessário sobrescrever o método insertString.

public class MaxLengthTextDocument extends PlainDocument {
	//Armazena o número máximo de caracteres para o texto.
	private int maxChars;

	@Override
	public void insertString(int offs, String str, AttributeSet a)
			throws BadLocationException {
		if(str != null && (getLength() + str.length() < maxChars)){
            		super.insertString(offs, str, a);
        	}
	}

	//getter e setter omitidos
}

Aqui definimos a classe MaxLengthTextDocument estendendo a PlainDocument. No atributo insertString inserimos uma regra onde só será inserido valor se comprimento não ultrapassar o valor máximo.

Depois é só inserir a implementação no JTextField, desta forma:

	...
	MaxLengthTextDocument maxLength = new MaxLengthTextDocument();
	maxLength.setMaxChars(50);//Limitamos para 50 caracteres

	jTextField.setDocument(maxLength);
	...

E voilá!

Até mais!


  • AdSense

  • Copyright © 1996-2010 André L. S.. All rights reserved.
    iDream theme by Templates Next | Powered by WordPress