问题标签 [libical]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
3418 浏览

iphone - 在 iPhone 项目中解析 .ics 数据

我正在制作一个 iPhone 应用程序,我想使用libical从 .ics 文件或从 .ics 文件的 URL 位置解析 .ics dat。

首先我想知道我将如何在我的项目中使用 libical?如何将它添加到我的 iphone 项目等中。我看过一些指南,但它们似乎特定于 OSX 项目而不是 iphone 项目。

其次,我想解析事件名称及其描述,以便我可以将事件名称/描述存储为变量..

我想知道这是否可以使用libical ..如果可以的话,有人可以大致告诉我我可以如何实现这个......

任何和所有的信息将非常感激!

感谢您的阅读

0 投票
1 回答
512 浏览

c - 基于 libical 的 CalDAV 服务器

我正在寻找一些关于如何使用libical构建 CalDAV 服务器的指针或示例代码。具体来说,您将如何使用 libical 生成可用于响应 CalDAV 请求的事件的文本表示?

0 投票
4 回答
2368 浏览

objective-c - 编译libical

我想编译libical并将其添加到我的 Xcode 项目中。

我已阅读 README 文件并在 Terminal.app 中运行以下命令:

我是否应该在可以拖放到项目中的某个地方编译 .a 文件?

0 投票
2 回答
1358 浏览

objective-c - Objective C - 带有元音符号的字符到 NSString

我正在使用 libical,它是一个解析 icalendar 格式(RFC 2445)的库。
问题是,例如在位置字段中可能存在一些德语变音符号。
现在 libical 为每个值返回一个 const char *,例如:

我尝试使用以下方法将其转换为 NSString:

但我得到的是:

有什么建议么?我将不胜感激任何帮助!

0 投票
2 回答
534 浏览

iphone - iOS - libical / const char * - 内存使用情况

我正在使用 libical 库来解析 iCalendar 格式并从中读取我需要的信息。到目前为止,它工作得非常好,但是关于 ical 有一件奇怪的事情。这是我的代码:

//...

我确实使用了工具来检查我的内存使用情况,并且能够发现这条线似乎泄漏了:

如果我将此行复制并粘贴 5 或 6 次,我的内存使用量将增长约 400kb,并且再也不会被释放。

该方法没有免费方法,icalvalue_as_ical_string_r因为它返回一个 char *..

任何建议如何解决这个问题?我将不胜感激任何帮助!

编辑

看一下苹果文档说以下内容:

要从字符串对象中获取 C 字符串,建议使用 UTF8String。这将返回一个使用 UTF8 字符串编码的 const char *。

您收到的 C 字符串归一个临时对象所有,并且在发生自动解除分配时将变为无效。如果要获取永久的 C 字符串,则必须创建一个缓冲区并复制该方法返回的 const char * 的内容。

但是如果使用 arc,现在如何正确释放 char * 字符串?我试图在我的while循环前面添加@autorelease {...},但没有任何努力。仍在增加内存使用...

0 投票
2 回答
2893 浏览

python - Postgresql 中的 RRULE 解析

目标:从 RRULE 字符串(即FREQ=WEEKLY;INTERVAL=2;COUNT=8;WKST=SU;BYDAY=TU,TH)和起始时间戳生成时间戳列表,每个时间戳代表一个事件发生。由于这些时间会随用户的心血来潮而改变,因此需要 postgresql,因为 (1) 它具有严格的业务逻辑质量和 (2) 触发器(值更改时自动更新行)

替代解决方案:

我最终使用了 plpythonu(postgresql 的 python 语言)。dateutil有一个很棒的规则解析器。

(原始)努力:C-library libicalPostgresql C-Extensions连接起来。这需要专门的 C 程序来执行以下操作:(1) 将 postgresql 数据类型转换为 C 数据类型,(2) 执行所有必要的 C 库函数,以及 (3) 使用头文件以 postgresql 格式返回数据“ postgres.h”。

连接器文件:ical_recur.c

准备连接器文件:

步骤 1:编译到目标文件,创建共享对象,复制到 postgresql 查找 C-extensions 的位置

步骤 2:添加 C 找到的 libical lib 文件夹并重新加载配置

测试连接器文件:

第 1 步:加载 psql 并创建函数

当前的障碍:

C 函数使 postgresql 服务器崩溃。

日志...

更新:

我已经更新了方法来解决一些建议。

建筑与..

进入数据库并执行..

相同的日志输出。文档说明了参数:

int icalrecur_expand_recurrence(char * rule, time_t start, int count, time_t * array)

问题:我们怎样才能让它在没有 postgres 崩溃的情况下工作?

0 投票
2 回答
249 浏览

c - 无法让 C 方法 icalrecur_expand_recurrence 工作

这有点令人沮丧。我已经为此工作了一段时间,但我似乎无法让这种方法像它所说的那样工作。

我将此测试文件保存为ical_recur.h. 然后我输入 bash:

包括libical.a库。该include/libical目录包含icalrecur.h在其中,因此我什至不需要包含整个 ical 库。

每当我更改任何指针时,它都会在编译期间开始抱怨某些事情。任何人都可以得到这个工作?源文件来自github 上的 Marketcircle

0 投票
1 回答
567 浏览

c - 在 OS X 上构建 libical-1.0 失败

我正在尝试将 libical 用于 C 项目。不幸的是,该make命令给了我以下输出:

我不确定这里有什么问题。我正在运行 OS X 10.9 和 gcc。

0 投票
2 回答
1966 浏览

c - libical的交叉编译

我正在尝试将 libical 移植到基于 arm 的平台,但编译时出错。这是我的构建步骤的结果:

$ ./configure --prefix=/opt/libical --build=i686-gnu-linux --host=arm-merlin-linux-uclibc

到目前为止对我来说看起来不错。现在正在建设。

$ make

构建环境是 Debian 6 挤压:

uname -a

Linux 2.6.32-5-686 #1 SMP Sun Sep 23 09:49:36 UTC 2012 i686 GNU/Linux

编译器版本为 4.2.1

源/构建脚本是否有错误?依赖问题?如何解决这个问题?如果有 libical 的替代方案,只要它是用 c 或 c++ 编写的,它也可以。

0 投票
2 回答
5099 浏览

ios - 为 iOS 的 arm64 和 x86_64 编译 Libical

我花了一些时间为 iOS(设备和模拟器)编译 arm64 和 x86_64 架构的 LibiCal。认为它可能对其他人有用。这是我编译 LibiCal-1.0 所遵循的步骤。我从下面的链接中获取了代码

编译libical

并进行了一些修改以适应 Xcode 5.1

1) 从以下 URL 下载 LibiCal

http://sourceforge.net/projects/freeassociation/

解压并进入 libCal-1.0 文件夹。然后运行

./bootstrap

(需要从http://www.jattcode.com/installing-autoconf-automake-libtool-on-mac-osx-mountain-lion/下载 make 工具)

使用下面的脚本

修改 line:11 "export ARCH=arm64" 以获得所需的架构,即 arm64、armv7、armv7s。

这应该在 ../libical-build 文件夹中为所需架构创建 bin。

为 x86_64 构建。

使用以下命令运行 get build for x86_64。

这应该在文件夹 src/libical/.libs/libical.a 中创建 libical.a。

创建胖库

使用以下命令构建 fat 库。(请使用适当的 lipo 命令)。

请设置适当的 OUTPUTDIR 环境变量。

我希望以上内容能帮助一些想要快速构建 Libical for iOS 的人。