サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
デスク環境を整える
simultechnology.blendmix.jp
プログラミングClojureでJavaのクラスを呼び出す箇所があり、試してみようと思った。 同じディレクトリに”data.txt”があるとする。 javaのFileReaderとBufferedReaderクラスを呼び出し、ファイルの読み込みはとりあえず以下のようになった。 (import '(java.io FileReader BufferedReader InputStreamReader)) (. (BufferedReader. (FileReader. "data.txt")) readLine) でももっとClojureっぽい書き方があるだろう、と思い調べてみると、 clojure.contrib.duck-streamsというモジュールに入出力のメソッドがあるようなので、それを使う。 とりあえず読み込んで出力。 (use '[clojure.contrib.duck-
実はandroidに入っている動画プレイヤーだけど、最近使い勝手がイマイチと思って、自分で作れないかなぁと感じている。 そのためのまず第一歩として、自分のandroid端末に入っている動画を適当に再生させてみた。 まずはeclipseは以下。 レイアウトのmain.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <VideoView android:id="@+id/video" android:la
あるキーワードを検索する時によくgrepを使うけど、テキストファイルに対してしか有効ではない。エクセルも一応、検索してくれるけど、かなり文字化けとかしててグッチャグッチャになって当然だけど使えない。 複数のエクセルファイルをgrepするツールもあるみたいだけど、仕事でjavaからエクセルを扱うpoiというライブラリを最近、使ったこともあって、javaで書いてみようと思った。 poiは以下からダウンロードできる。 http://poi.apache.org/download.html また、最近のエクセルファイルの拡張子は「.xlsx」で、エクセル2003までの「.xls」と違っているらしい。エクセルって基本的に仕事でしか使わないし、古いエクセル使っているから知らなかった。自分のマシンのエクセルを使って初めて知った。まぁ、だいたいの開発現場ってそんなに新しいバージョンのofficeなんて使
rubyのDir.glob()やpythonのos.walk()のように、あるディレクトリ以下に含まれるファイルを再帰的に検索するような機能をjavaで書く必要があったので、書いた。 java.io.FileクラスにlistFilesというメソッドがあって、これはディレクトリに含まれるファイル、ディレクトリなどを配列で返す。 再帰的にファイルの一覧を出力するには、ファイルの場合はファイルパスを出力し、ディレクトリの場合は再帰的に自身のメソッドで再びディレクトリを検索することで実現できる。 また、listFilesの引数にはフィルタを渡すこともできて、配列として返したいファイルの条件を指定することもできる。今回はjava,jsp等のソースの一覧を出力させたかったので、隠しファイル(.ドットで始まる)やclassファイルを除外するようにした。 以下がそのコード。 SearchDirector
ボタンがclickされた時の動きをまとめておきたいと思った。 eclipseは以下の構成。 表示ボタンを押したら文字が表示され、非表示ボタンを押すと消えるというようなシンプルなもの。 レイアウトを定義するmain.xmlで、ボタンや文字列を表示するラベルを定義する。 main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" > <TextView android:layout_width="fill_pa
まず、eclipseにPhotoというプロジェクトを作った。 触ったのは2ファイル。 まずは、AndroidManifest.xml 次にPhoto.java package photo.test; import java.io.FileOutputStream; import java.io.IOException; import java.text.SimpleDateFormat; import java.util.Date; import android.app.Activity; import android.hardware.Camera; import android.os.Bundle; import android.view.MotionEvent; import android.view.SurfaceHolder; import android.view.Surf
以前、phpで簡単な辞書アプリを作ったり、twitterの翻訳botを作ったりしたのだけど、その時はgoogleのAPIと英語学習サイトのiknowのAPIを使っていた。 ikowで「ruby」という単語の情報を取得した場合 http://api.iknow.co.jp/items/matching/ruby.xml Google翻訳APIのページ http://code.google.com/intl/ja/apis/ajaxlanguage/documentation/ 今、サーバを止めている状態なので、そのアプリは動いてないんだけど、ちょっとまた翻訳APIを使ってみようと思った。 そこで、以前androidもくもく勉強会でhさんにMicrosoftの翻訳APIはかなり正確だと言われたのを思い出し、試してみた。 Microsoftの翻訳APIを使うには「AD697D10EC7A375
今日のandroidもくもく勉強会で、ちょっと調べたことをメモしようと思った。 androidからyoutubeのデータを操作するアプリを作りたいな、と前から思っていて、 androidを触る時に、youtube API を含むgdataの扱い方を調べるのだが、いかんせんandroidに触れるのは2ヵ月に1回程度なので、すぐ忘れてしまう。そのためのメモ。 基本的には以下のgoogleのサイトを参考に構築した。 http://code.google.com/intl/ja/apis/gdata/articles/eclipse.html サンプルコードの通りに作成し、実行したら以下のエラーが出た。 Exception in thread "main" java.lang.NoClassDefFoundError: com/google/common/collect/Maps com.goo
html5の本をサンプルをやりながら改造して、辞書のAPIからデータを取得し、表示させるというようなシンプルなものを作ってみた。 まず作成し、google app engine上にアップしたのはこれ↓ http://simul-technology.appspot.com 使用したAPIは「イースト辞書Webサービス」。urlはこれ↓ http://www.btonic.com/ws/ html5のcontenteditable属性をtrueにした入力欄に、入力された値をjQueryの$.getJSONメソッドを使用し、非同期でサーバサイドに入力値を送る。 サーバサイドであるsinatra上では、入力値に基づくデータを取得し、それをjson形式でクライアント側に返すような感じ。 まず、フォルダ構成などは以下のようになった。 まず、sinatraのviewであるmyapp/views
先日、書いた「Microsoftの翻訳APIはすごいと聞いたので使ってみた。Rubyで。」では、rubyで外部APIを呼び出しているけど、今回はandroidでやってみた。 最初、外部のurlを呼び出す際、以下のようなエラーメッセージが出た。 java.net.SocketException Permission denied (maybe missing INTERNET permission) よくよく調べたら、AndroidManifest.xmlに、以下の記述が必要らしい。 というわけでAndroidManifest.xmlは以下。 AndroidManifest.xml 次に画面レイアウトを定義するmain.xml /dictionary/res/layout/main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLay
最初、リンクの画像タグがエスケープされ、うまく行かなかった。 cake/libs/view/helpers/html.phpを見ると、以下のように第3引数にオプションを指定でき、それでエスケープを無効にもできるようだ。 cake/libs/view/helpers/html.php function link($title, $url = null, $options = array(), $confirmMessage = false) { $escapeTitle = true; if ($url !== null) { $url = $this->url($url); } else { $url = $this->url($title); $title = $url; $escapeTitle = false; } if (isset($options['escape'])) { $
端末画面がタッチされた場所に画像を表示し、スライドさせるようなものを描いてみた。 タッチ(クリック)された場所の情報を拾うのはonTouchEventメソッドで使用するらしい。移動の部分は、タイマーイベントで、0.1秒毎に画像に対して、動作を加える。 src以下のソースは以下。 MovieBitmap.java package movie.test; import movie.test.R; import android.app.Activity; import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.os.SystemClock; import android.content.Context; import android.content.res.Re
APIはリファレンスで見れるけど、中のソースを見たいと思った。 ソースを添付しようとしてもできない。 画像では見辛いかもしれないが、以下のようなメッセージが出ている。 クラス・ファイル・エディター ソースがみつかりませんでした コンテナー'Google APIs[Android 1.6]'に属するこのクラス・ファイルのJARはエントリー上のソース添付の変更を許可していません。 ただ、googleで検索したらeclipseでソースを見る方法はあるようだ。 以下のサイトを参考にした。eclipseでandroidのソースを見れる方法が書いてあるblogなどをまとめている。 http://bit.ly/boR9vH ここで紹介されている幾つかのサイトを見たら、やり方は大体共通みたいだ。 まずはソースを落としてくる。そして、androidがインストールされているホームディレクトリ以下に”sour
kay-frameworkの勉強会である「Kay Framework Dev Lounge」に参加予定なので、事前に少し動かしておこうと思った。OSはwindows。 ちなみにkay-frameworkとは、Google App Engine(python)上で動作するフレームワーク。 では早速インストール。 kay-frameworkはmercurialというバージョン管理システムでソースを管理しているので、mercurialを以下のurlからダウンロードする。 http://mercurial.selenic.com/ windows版だとインストーラがダウンロードされるので、実行しインストールする。 次はpydevでmercurialのプラグインをインストールする。 pydevの「メニュー」→「ヘルプ」→「新規ソフトウェアのインストール」で以下のurlを追加し、プラグインをイン
scala.vim http://www.vim.org/scripts/script.php?script_id=1780 vim_clojure.vim http://repo.or.cz/w/clojure-patches.git?a=blob_plain;f=vim/clojure.vim;hb=HEAD 上記の2ファイルをvim72-kaoriya-w32j\runtime\syntax下に入れる。 vim72-kaoriya-w32j\runtime\filetype.vimの1580行目付近 " Ruby au BufNewFile,BufRead *.rb,*.rbw,*.gem,*.gemspec setf ruby " Ruby on Rails au BufNewFile,BufRead *.builder,*.rxml,*.rjs setf ruby " Ran
先日、python初心者教室でやったpythonの例題をGAEで動かそうと思った。それだけでは芸がないのでデバッグでステップ実行のやり方を書こうと思った。 内容はファイルを読み込み(英文のみのファイル)、その中で最も使われている単語と、その回数を表示するというもの。 まずは読み込むフォームのあるhtml file.html <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>sample</title> </head> <body> <h3>読み込んだファイルの中身で最も多く、使わ
仕事でファイル抽出やフォルダ間移動など、pythonで自動化できるところはしたいなぁって思って、最近ちょっとスクリプト的なものを書いている。 osモジュールを使ったら、色々な事ができると思うので、ちょっと研究していこうかな、と。 とりあえず、書いたのは、実行するpythonファイルがあるディレクトリ以下(サブフォルダも全て含む)の全ファイルを更新日時が新しいものから、100個取得してくるものを書いた。 search_updated_file.py # -*- coding: utf-8 -*- import os import datetime import time file_list = [] for path, sbdir, files in os.walk('.'): dir_list = os.listdir(path) for dir_elem in dir_list: #
先日、phpフレームワークでCodeIgniterのページングについて、少しまとめて話したものをスライドシェアにあげた。それがこれ↓ CodeIgniterのページングに関して。 View more presentations from simultechnology. オフセットを引数にとる、検索メソッドはこんな感じ。 public function search_page($offset = 0) { $this->load->helper('date'); $per_page = strlen($per_page) ? $per_page : 20; $data['per_page'] = $per_page; // 値を配列で詰め替え $search_data = array( 'per_page' => $per_page, //表示件数 'offset' => $offset,
GAE上に英単語、約、更新者、更新日付の4項目を保持し、表示させるアプリをサンプルで作った。 読み込んだファイルを要素へ分解、それをテーブルに登録する。 データストアへの登録はJDOを使用。 取り込むcsvは以下の書式。utf8。 sample.csv walk,歩く,太郎 map,地図,花子 ruby,ルビー,岡田 java,コーヒー,まずい まずは取込み画面のjsp。非常にシンプル。 <html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <title>Hello File Upload</title> </head> <body> <h1>File Upload!</h1> <form action="/fileupload" method="post" enctype=
更新サイトの場所が最初、少し分からなかったが、なんとか辿り着いた。 以下が更新サイトのurl。 http://updatesite.counterclockwise.googlecode.com/hg/ 更新サイトの画像。 以下のサイトから辿りついた。 http://code.google.com/p/counterclockwise/wiki/Documentation#Having_issues_with_the_installer_? プラグインのインストールが成功すると、clojureプロジェクトが作成できるようになる。 適当にHelloWorldを書いて実行 コンソールで入力し、実行できるようになる。またファイルで定義した関数も実行可能。 これから年末にかけて色々書いてこうかなぁ
以前、eclipseでclojureを使う事について書いたけど、最近プログラミングclojureの日本語訳が出た事もあって、もっと本格的にやってみようかなぁと思っている今日この頃。 もちろんeclipseで本格的にclojureを書けるとは思うけど、やはりlisp的な言語らしくemacsで書けたらいいなぁと思って、clojure、emacsなどがオールインワンになっている『Clojure Box』を以下のurlからダウンロードした。 http://clojure.bighugh.com/ ここからclojure-box-1.1.0-1-setup.exeをダウンロードしローカルマシンの任意のフォルダで実行。 あとは、このままダイアログを進めていけばインストール完了。途中でデスクトップにランチャーを作成するか聞かれるので、作成してかればyesを選択する。 インストールを終了すると、以下の
このページを最初にブックマークしてみませんか?
『simultechnology.blendmix.jp』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く