Top/Prog/Tool/HATENA Helper

¤Ï¤¸¤á¤Ë

¤Ï¤Æ¤Ê¥À¥¤¥¢¥ê¡¼¤Ç¥Ö¥í¥°¤ò½ñ¤¤¤Æ¤Þ¤¹¡£
¥µ¥¤¥È¾Ò²ðŪ¤ÊÆâÍƤ¬Â¿¤¯¡¢¥µ¥¤¥È¤Ë¥ê¥ó¥¯Àè¤òµ­½Ò¤¹¤ë»ö¤¬Â¿¤¤¤Î¤Ç¤¹¤¬¡¢¡Ê¸«½Ð¤·¤È¤·¤Æ¡Ë¥ê¥ó¥¯¤òµ­½Ò¤¹¤ëºÝ¤Î¥Õ¥©¡¼¥Þ¥Ã¥È¤Ï¡¢

*[¥«¥Æ¥´¥ê̾][¥ê¥ó¥¯Àè:title=¥¿¥¤¥È¥ë¡Ê¾Êά²Ä¡Ë]

¤Î¤è¤¦¤Ë¤Ê¤Ã¤Æ¤¤¤Þ¤¹¡£
Ëè²ó¤³¤ÎÄ̤ê¤Ëµ­½Ò¤¹¤ë¤Î¤Ï¼ê´Ö¤¬¤«¤«¤ë¤Î¤Ç¡¢¥Ö¥é¥¦¥¶¤Î¥¢¥É¥ì¥¹Íö¤«¤é¥É¥é¥Ã¥°¡õ¥É¥í¥Ã¥×¤¹¤ë¤À¤±¤Ç¡¢¾åµ­¥Õ¥©¡¼¥Þ¥Ã¥È¤Ë½¾¤Ã¤ÆÀ°·Á½ÐÎϤ¹¤ë¥Ä¡¼¥ë¤òÀ©ºî¤·¤Þ¤·¤¿¡£

ɬÍפʵ¡Ç½¤È²òÀâ

¥É¥é¥Ã¥°¡õ¥É¥í¥Ã¥×¤Î¼õ¤±¼è¤ê

URL¤Î¤ß¼õ¤±¼è¤ëɬÍפ¬¤¢¤ê¤Þ¤¹¡£
DragEnter¥¤¥Ù¥ó¥È¤Ç¡¢URL¤Î¤ß¼õ¤±Æþ¤ì¤ë½èÍý¤òµ­½Ò¤·¤Þ¤¹¡£

private void txt_Output_DragEnter(object sender, DragEventArgs e)
{
	//URL¤Î¤ß¼õ¤±Æþ¤ì¤ë
	if (e.Data.GetDataPresent("UniformResourceLocator"))
	e.Effect = DragDropEffects.Link;
	else
	e.Effect = DragDropEffects.None;

}

URL¤È¥¿¥¤¥È¥ë¤ÎÃê½Ð

¥É¥é¥Ã¥°¡õ¥É¥í¥Ã¥×¤ÎÆâÍƤ«¤é¡¢URL¤È¥¿¥¤¥È¥ë¤ÎÃê½Ð¤ò¤·¤Þ¤¹¡£

//¥í¡¼¥«¥ëÊÑ¿ô¤ÎÄêµÁ
string sBuffer;                     //ºî¶ÈÍÑ
string sURL;                        //URLÊÝ´ÉÍÑ
string sTITLE;                      //TITLEÊÝ´ÉÍÑ
string[] arysBuffer;
byte[] arybBuffer;
int iLength = 0;

//¥É¥í¥Ã¥×¤µ¤ì¤¿¥ê¥ó¥¯¤ÎURL¤ò¼èÆÀ¤¹¤ë
sURL = e.Data.GetData(DataFormats.Text).ToString();

//¥¿¥¤¥È¥ë¤Î¼èÆÀ
if (sURL.IndexOf('\\') > -1)
{
    arysBuffer = sURL.Split('\\');
    sURL = arysBuffer[0];
    sTITLE = arysBuffer[1];
}
else
{
    //FILEGROUPDESCRIPTOR¹½Â¤ÂΤΥǡ¼¥¿¤òMemoryStream¤Ç¼èÆÀ
    MemoryStream msBuffer = (MemoryStream)e.Data.GetData("FileGroupDescriptor");

    //FileGroupDescriptor¤ÎŤµ¤ò¼èÆÀ
    msBuffer.Seek(76, SeekOrigin.Begin);
    iLength = 0;
    while (msBuffer.ReadByte() > 0)
    {
        iLength++;
    }

    //cFileName¤ÎÉôʬ¤òbyteÇÛÎó¤Ë¼èÆÀ
    arybBuffer = new byte[iLength];
    msBuffer.Seek(76, SeekOrigin.Begin);
    msBuffer.Read(arybBuffer, 0, iLength);
    msBuffer.Close();

    //Shift JIS¤Ç¥Ç¥³¡¼¥É¤¹¤ë
    sTITLE = System.Text.Encoding.GetEncoding("Shift_JIS").GetString(arybBuffer);
    //ºÇ¸å¤¬.url¤«³Îǧ¤·.url¤ò½üµî
    if (sTITLE.ToLower().EndsWith(".url"))
    {
        sTITLE = sTITLE.Substring(0, sTITLE.Length - 4);
    }
}

ʸ»úÎóÃÖ´¹

Á°½Ò¤Î¥Õ¥©¡¼¥Þ¥Ã¥È¤Ë½¾¤Ã¤Æ¡¢URL¤È¥¿¥¤¥È¥ë¤ò´Þ¤ó¤À¤Ï¤Æ¤Êµ­Ë¡¤ò½ÐÎϤ·¤Þ¤¹¡£

//¥Õ¥©¡¼¥Þ¥Ã¥È¤Ë½¾¤¤Ê¸»úÎó¤òÀ¸À®
sBuffer = txt_Format.Text.Replace("<TITLE>", sTITLE);
sBuffer = sBuffer.Replace("<URL>", sURL);

//·ë²Ì¤ò½ÐÎÏ
txt_Output.Text = txt_Output.Text + sBuffer + "\r\n";

¥¯¥ê¥Ã¥×¥Ü¡¼¥É¤Ø¥³¥Ô¡¼

À¸À®¤·¤¿ÆâÍƤò¡¢¥¯¥ê¥Ã¥×¥Ü¡¼¥É¤Ø¥³¥Ô¡¼¤·¤Þ¤¹¡£

Clipboard.SetText(txt_Output.Text);

¼Â¹Ô·ë²Ì

¥Ö¥é¥¦¥¶¤ÎURLÍ󤫤顢¤³¤Î¥¦¥£¥ó¥É¥¦¤ËÂФ·¥É¥é¥Ã¥°¡õ¥É¥í¥Ã¥×¤¹¤ë¤È¡¢¡ÖFormat¡×Íó¤Ë½¾¤Ã¤Æ¡¢¤Ï¤Æ¤Êµ­Ë¡¤Ç½ÐÎϤ·¤Þ¤¹¡£

01_HelperForHATENA.PNG

¥µ¥ó¥×¥ë¥³¡¼¥É

»²¹Í

2008-03-16 (Æü) 15:33:14

Prog



źÉÕ¥Õ¥¡¥¤¥ë: fileHelperForHATENA_src.lzh 1064·ï [¾ÜºÙ] file01_HelperForHATENA.PNG 1039·ï [¾ÜºÙ]
¥È¥Ã¥×   ÊÔ½¸ Åà·ë²ò½ü º¹Ê¬ ÍúÎò źÉÕ Ê£À½ ̾Á°Êѹ¹ ¥ê¥í¡¼¥É   ¿·µ¬ °ìÍ÷ ¸¡º÷ ºÇ½ª¹¹¿·   ¥Ø¥ë¥×   ºÇ½ª¹¹¿·¤ÎRSS
Last-modified: 2008-04-05 (ÅÚ) 23:51:53