hdimport.rb

XMLでエクスポートしてもらってきたはてなダイアリーのデータを
./importに、はてダラ形式で置く。

# hdimport.rb
# 
# Copyright (c) by arikui 2007 -
# distributes under the same term as Ruby
# 
# Version 0.1.0

require 'rexml/document'
require 'kconv'

def encode(str)
  str.toeuc
end

IMPORT_PATH = "./import"
Dir.mkdir(IMPORT_PATH) unless File.directory?(IMPORT_PATH)

doc = REXML::Document.new(ARGF)
diary = doc.root
diary.elements.each do |day|
  attrs = day.attributes
  title, date = attrs['title'], attrs['date']
  File.open("#{IMPORT_PATH}/#{date}.txt", 'w') do |f|
    f.puts encode(title)
    day.elements.each do |body|
      f.puts encode(body.text)
    end
  end
end